[英]How can I find this regular expression for replace_all?
我已经尝试了很多,但是无法找到在replace_all中组合这两个正则表达式的方法。
"test String".replaceAll("(?i)[^a-zßäöü]", " ").replaceAll(" +", " "));
第一个正则表达式删除不属于德语的每个符号,第二个正则表达式删除每个等于或大于2的空格。 (我怎么说,它应该是2个或更多的空间?因为+表示至少1,对吗?)
谢谢 :)
在某些情况下,组合您的替换并非易事,因为第一次替换可能会产生一些结果,应将其包括在第二次替换中。
就你而言
a-zßäöü
, 换句话说,如果您有"ab.,!@#cd ef
,它将首先转换为ab cd ef
然后再转换为ab cd ef
。
换句话说,您要用一个空格替换不是一个或多个字符的一组字符。 所以您可能应该简单就可以了
replaceAll("(?i)[^a-zßäöü]+", " ") // space is also included in [^a-zßäöü]
// but that should be fine since replacing
// space with space shouldn't break anything
// (especially if it worked in your original solution)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.