我看了: Regular Expression to match string starting with "stop"
我想在XCode中使用正则表达式搜索搜索以_
字符开头的所有字符串(如果重要的话)我最初认为我可以用^ _搜索但是只返回我的行以_开头,它们排除了带空格的行。
我希望我的搜索能够返回以下所有内容:
_foo
_bar
_baz
例如并排除
之类的内容foo_bar
#_
wholeWord_anotherWord
或任何其他不以' _'开头的字符串然后是myString(ex _myString是一个理想的结果)。基本上我在_命名约定之后寻找所有变量。
我看了:How to ignore whitespace in a regular expression subject string?
我尝试"\s*^_"
,但仅返回'new line'_aString
。我误解了解决方案吗?什么会给我任何_variable的正确答案?
答案 0 :(得分:1)
我最初认为我可以用^ _搜索,但只返回以_开头的行,它们排除带空格的行
鉴于:
^_
适用于不以空格开头的行;和" foo_bar"
之类的行)然后我找到了以下任何组合:
^\s*_
^\s+?_
^[:space:]*_
将返回以下各项的匹配项:
_foo
_bar
_baz
请注意,[:space:]
字符类占所有空格(制表符,换页符,回车符等)。
您可以通过将(.*$)
添加到上述正则表达式来返回以这些条件中的任何一个开头的整个字符串。分别;
(^\s*_\w+)(\s*)(.*$)
(^\s+?_\w+)(\s*)(.*$)
(^[:space:]*_\w+)([:space:]*)(.*$)
如果需要分离,则后引用\1
将为_var
,后引用\3
将是_var
之后的字符串,如果用空格分隔。