【发布时间】:2021-04-17 09:25:24
【问题描述】:
假设我有一个字符串WORK-232-3213-2323。已知可能的案例场景:
WORK-232-3213-2323, some text
WORK-232-3213-2323. some text
WORK-232-3213-2323.xlsx
WORK-232-3213-2323 some text
WORK-232-3213-2323/some text
格式WORK-232-3213-2323-some text也有可能出现,不过这种情况不需要处理
我当前的正则表达式能够使用WORK-232-3213-2323 模式捕获所需的字符串,但作为输出我得到-232-3213-2323。如何让它在字符串中捕获WORK- 加上其余文本,直到下一个空格、点、斜杠或逗号?
当前正则表达式:WORK-(.*?)[\s]
C#:
Regex pattern = new Regex("WORK-(.*?)[\s]");
string result = pattern.Match(myString).Groups[1].Value
【问题讨论】:
-
可能在
\bWORK(?:-[0-9]+)+附近。您当前正在尝试检索捕获组 1 的值。 -
@"^(?'prefix'[^\d]+)(?'number'[^\s,\./]+)"