为了账号安全,请及时绑定邮箱和手机立即绑定

正则表达式查找不存在的空格前缀但不包含匹配中的字符?

正则表达式查找不存在的空格前缀但不包含匹配中的字符?

C#
四季花海 2021-06-22 17:12:58
所以我有以下 RegEx 用于查找和添加空格:(\S)(\()因此,对于像“SomeText(Somemoretext)”这样的字符串,我想将其更新为“SomeText (Somemoretext)”,它匹配“t(”,因此我的替换从字符串中消除了不好的“t”。我也没有知道角色可能是什么,我只是想找到不存在空格的地方。是否有更好的表达式可以使用,或者有没有办法从返回的匹配中排除找到的字符,以便我可以安全地替换而不捕获我不想替换的字符?
查看完整描述

2 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

如果您需要检测单词后特定字符(例如括号)之前是否有空格,那么以下如何?

\b(?=[^\s])\(

这将检测words( [a-zA-z0-9_] 后跟括号,没有空格)。

(如果我没有得到你的问题),您可以替换full match(,让你需要的东西。

如果您需要在任何类型的文本(如文本中可能是non-word,例如标点符号)中的符号(如括号)之前查找缺失空格,您可能需要使用以下内容。

^(?:\S*)(\()(?:\S*)$

使用它时,您的结果将在group 1, 而不是 just full match(现在包含整行,如果有一行匹配)。


查看完整回答
反对 回复 2021-06-27
  • 2 回答
  • 0 关注
  • 204 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信