সাবএক্সপ্রেশন/মেটাক্যারেক্টার "\W" নন-ওয়ার্ড ক্যারেক্টার ম্যাচ করে (অর্থাৎ [^a-zA-Z0-9_])।
উদাহরণ ১: "!" প্রिर्फিক্স নন-ওয়ার্ড ম্যাচ
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String args[]) {
String regex = "\\W!";
String input = "Hello how are you welcome to Tutorialspoint !";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
int count = 0;
while (m.find()) {
count++;
}
System.out.println("ম্যাচের সংখ্যা: " + count);
}
}
আউটপুট
ম্যাচের সংখ্যা: 1
ব্যাখ্যা: \\W! মানে একটি নন-ওয়ার্ড ক্যারেক্টার এবং তারপর '!'। ইনপুটে "point !"-এ স্পেস (নন-ওয়ার্ড) এবং '!' — একবার ম্যাচ করেছে।
উদাহরণ ২: নন-ওয়ার্ড ক্যারেক্টার ধারণকারী স্ট্রিং ফиль্টার
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String args[]) {
String regex = "\\W.*$";
Scanner sc = new Scanner(System.in);
System.out.println("৫টি ইনপুট স্ট্রিং দিন: ");
String input[] = new String[5];
for (int i = 0; i < 5; i++) {
input[i] = sc.nextLine();
}
Pattern p = Pattern.compile(regex);
System.out.println("নন-ওয়ার্ড ক্যারেক্টার ধারণকারী স্ট্রিংগুলো: ");
for (int i = 0; i < 5; i++) {
Matcher m = p.matcher(input[i]);
if (m.matches()) {
System.out.println(m.group());
}
}
}
}
আউটপুট
৫টি ইনপুট স্ট্রিং দিন: $hello sample test1 test2 #$&* নন-ওয়ার্ড ক্যারেক্টার ধারণকারী স্ট্রিংগুলো: $hello #$&*
নোট: \\W আন্ডারস্কোর (_) কেও নন-ওয়ার্ড মানে।