在java中是否有任何正则表达式可以只查找字符串中的转义字符?
我想从特殊字符列表中过滤掉转义字符在java中是否有任何正则表达式可以只查找字符串中的转义字符?,java,regex,string,split,special-characters,Java,Regex,String,Split,Special Characters,我想从特殊字符列表中过滤掉转义字符 String data = "21.LRK.31"; char[] charactersInData = data.toCharArray(); Pattern pattern = Pattern.compile("[^0-9^a-z^A-Z]+"); String specialCharacterInData = ""; String escapeCharacterInData = ""; for (int i = 0; i < charactersI
String data = "21.LRK.31";
char[] charactersInData = data.toCharArray();
Pattern pattern = Pattern.compile("[^0-9^a-z^A-Z]+");
String specialCharacterInData = "";
String escapeCharacterInData = "";
for (int i = 0; i < charactersInData.length; i++) {
Matcher matcher = pattern.matcher(String.valueOf(charactersInData[i]));
if (matcher.matches()) {
specialCharacterInData = String.valueOf(charactersInData[i]);
break;
}
}
pattern = Pattern.compile("[^0-9^a-z^A-Z]+");
if (specialCharacterInData.equals(".")) {
escapeCharacterInData = "\\" + specialCharacterInData;
} else {
escapeCharacterInData = specialCharacterInData;
}
String[] contentOfLicencePlateNumber = data.split(escapeCharacterInData);
String data=“21.LRK.31”;
char[]charactersInData=data.tocharray();
Pattern=Pattern.compile(“[^0-9^a-z^a-z]+”);
字符串SpecialCharacterista=“”;
字符串EscapeCharacteranda=“”;
对于(int i=0;i
在获取
SpecialCharacterData
后,我想再次检查此特殊字符是否为转义字符,因为要用转义字符拆分字符串,需要在这之前添加两个反斜杠(\\
)。如果要在任何非字母数字字符上拆分字符串,然后,使用一个衬里就很容易做到这一点:
String data = "21.LRK.31";
String[] parts = data.split("[^A-Za-z0-9]");
如果您还有其他需要,请更新您的问题。我怀疑你可能在做额外的工作,而这些工作对于实现你的最终目标是不必要的
<>编辑:如果你真的需要在一个未知字符上逃跑,那就把它放到一个字符类中。例如:
System.out.println("Hello.World!".split("[.]")[1]);
这将输出
世界代码>,我们可以在点上拆分元字符,而不必担心转义。谢谢Tim。我想这就是我一直在寻找的解决方案。:)