所以我正在制作一个程序来解析抽搐聊天,我想知道是否有一种方法可以使用正则表达式将以下内容解析为所需的结果:
"f o o b a r" into "foobar"
到目前为止,我所拥有的代码是/(?:(\w)\s){3,}/g有效的,但请考虑以下情况:
"FrankerZ R I O T FrankerZ"捕获"T"(最后一个字母"R I O T")并选择"Z R I O T"
我想要的是弄清楚如何检测在它之前和之后是否有一个带有空格的单个字母,并且如果连续存在至少3个这样的字母(因此"test a b test"未被选中ab,因此仅捕获有3+)
有帮助吗?谢谢!
感谢 Sam Burns 建议使用 \b。对我有用的是:
/\b((?:\w ?\b){3,})/g
这将选择以下内容:
H Y P Efrom FrankerZ H Y P E FrankerZ, and
f o o b a r(不以空格字符结尾或开头,也给我带来了问题)
当我只想首先检查空格" "字符时,指定文字空格字符对于避免换行和其他情况也很重要。\s
为了将其替换为不带空格,我只需做即可.replace(" ","")获得我想要的确切结果。再次感谢大家的帮助:)