回答
您可以使用正则表达式\w+[\\.:;_,-]+(?= |$)
使用这样的事情,在你的java代码:
String val="dev\\ devendra. devendra, dev dev, dev; devendra: wan.gikar devendra: windchill- windchill- serviceCenter_ sC_Windchill";
String REGEX="\\w+[\\\\.:;_,-]+(?= |$)";
Pattern pattern = Pattern.compile(REGEX);
Matcher matcher = pattern.matcher(val);
while(matcher.find()){
System.out.println(matcher.group());
}
输出
dev\
devendra.
devendra,
dev,
dev;
devendra:
devendra:
windchill-
windchill-
serviceCenter_
参考this,了解更多详情。
说明:
$
匹配字符串的结尾这样试试:
[\\.,;:\-_]+$
由于\
是特殊的正则表达式字符,你应该用\
逃避它,所以它在正则表达式变得\\
。 character class中的-
也具有特殊含义,因为它用于创建像a-z
这样的字符范围,因此您需要将其转义。
此外,由于你是问关于Java,你需要知道\
需要写成"\\"
,因为它也是在字符串字面特殊字符,所以字符串的正则表达式看起来像
"[\\\\.,;:\\-_]+$"
你并不需要在'[...]'逃脱'.',但它会很高兴,因为它被用来创建逃跑'-'字符类中的字符范围,如'[az]'。 – Pshemo
谢谢!我以为那是因为。是一个正则表达式字符它应该也逃脱。 – user987339
通常它会,但'[]'也是很好的机制来转义一些特殊字符,例如你可以用这种方式逃避'[*]''[$]'和其他许多正则表达式元字符。 – Pshemo
- 1. C#正则表达式匹配字符串末尾的数字
- 2. 在正则表达式中,匹配字符串的末尾或特定字符
- 3. 正则表达式匹配字符串末尾的模式?
- 4. 正则表达式字符串的末尾匹配
- 5. 正则表达式为末尾有特殊字符的字符串
- 6. 正则表达式匹配_或字符串末尾
- 7. 正则表达式在字符串末尾不匹配
- 8. 正则表达式匹配字符串末尾
- 9. 与特殊字符匹配的正则表达式字符
- 10. 正则表达式匹配字符,除非它们在字符串末尾
- 11. “ - ”,而使用正则表达式匹配的特殊字符,C#
- 12. 蟒蛇正则表达式 - 字符串匹配的匹配尾
- 13. 正则表达式 - 字符串末尾的修剪字符
- 14. 正则表达式匹配字符串的末尾而不使用'$'
- 15. 匹配具有特殊字符的字符串的Perl正则表达式
- 16. 正则表达式匹配特定字符串的字符>
- 17. 匹配字符串的特殊字符在JavaScript正则表达式
- 18. Java正则表达式匹配特定的特殊字符
- 19. 正则表达式匹配特殊字符和数字
- 20. C#正则表达式全字匹配,带特殊字符
- 21. 在正则表达式中匹配特殊字符和字母
- 22. Hive正则表达式:匹配'&'或字符串末尾的正向预测
- 23. 正则表达式为尾随。在字符串的末尾
- 24. 使用正则表达式添加字符串域末尾
- 25. 重复字符匹配正则表达式匹配字符串
- 26. 正则表达式匹配字符串
- 27. 正则表达式匹配字符串
- 28. 正则表达式匹配字符串
- 29. 正则表达式匹配字符串
- 30. 正则表达式匹配字符串
如何删除特殊字符中的特殊字符? –