如果找不到定界符,则捕获所有内容
Capture everything if delimiter is not found
我有一组字符串:
first part#2nd part
a part
1st part#
#2nd part
如果字符串有'#
'分隔符,我需要捕获所有后续字符。如果字符串没有 '#
' 分隔符,我需要捕获字符串中的每个字符。 Link to example.
我该怎么做?
您可以使用
^(?:[^#]*#)?(.*)$
参见regex demo。
详情
^
- 字符串开头
(?:[^#]*#)?
- 可选的非捕获组匹配除 #
以外的 0 个或多个字符,然后是 #
(.*)
- 第 1 组:除换行字符外的任何 0 个或更多字符,尽可能多
$
- 字符串结尾。
我有一组字符串:
first part#2nd part
a part
1st part#
#2nd part
如果字符串有'#
'分隔符,我需要捕获所有后续字符。如果字符串没有 '#
' 分隔符,我需要捕获字符串中的每个字符。 Link to example.
我该怎么做?
您可以使用
^(?:[^#]*#)?(.*)$
参见regex demo。
详情
^
- 字符串开头(?:[^#]*#)?
- 可选的非捕获组匹配除#
以外的 0 个或多个字符,然后是#
(.*)
- 第 1 组:除换行字符外的任何 0 个或更多字符,尽可能多$
- 字符串结尾。