Как заставить Regex игнорировать символы, отличные от кодировки символов Cp1252

Я использую регулярное выражение для сопоставления, если строка содержит хотя бы алфавит. но когда строка содержит специальные символы (не в обычной кодировке Cp1252), это дает мне результат как несоответствующий, даже если строка имеет другие алфавиты. Вот мой код

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class StringContainsAlphabetsExample {
public static void main(String[] args) {

Pattern pattern = Pattern.compile(".*[a-zA-Z]+.*");

 String splChar = "has Alphabet";
 Matcher matcher = pattern.matcher(splChar);

 if (matcher.matches()) {
      System.out.println("Matched");
 } else {
      System.out.println("Not Matched");
  }
 }
}

Вот строка, которая вызывает ошибку

String splChar = "This text has a special char.​
";

Скопируйте и вставьте вышеуказанную строку в блокнот, чтобы увидеть специальный символ.

Пожалуйста, дайте мне знать, как отфильтровать эти специальные символы в строке или как-нибудь обойти, чтобы найти, содержит ли строка алфавиты.

0 ответов

Другие вопросы по тегам