0
我有以下字符串:如何使用DOTNET正则表达式时,源字符串与特定的字符串开始捕获串
城市里约热内卢+贝洛奥里藏特+桑托斯
,我可以使用此正则表达式成功地提取城市名称:
(?<=city\-|\+)(?<city>[a-zA-Z\s+\-]+)(?=\+|$)
,但实际上上述正则表达式是治疗子“都市”为可选的,我怎么能确保字符串开头“城市 - “并捕获所有后续由加号分隔的字符串?
我有以下字符串:如何使用DOTNET正则表达式时,源字符串与特定的字符串开始捕获串
城市里约热内卢+贝洛奥里藏特+桑托斯
,我可以使用此正则表达式成功地提取城市名称:
(?<=city\-|\+)(?<city>[a-zA-Z\s+\-]+)(?=\+|$)
,但实际上上述正则表达式是治疗子“都市”为可选的,我怎么能确保字符串开头“城市 - “并捕获所有后续由加号分隔的字符串?
您可以先尝试用^city-
替代您的输入:如果生成的字符串相同,则不是您想要的。
如果相反,替换成功,只需将转换后的字符串拆分为+
,则组将为城市名称。任务完成!
第1步的替代方法:查找第一个子串“city-”的索引,它应该为零。甚至不需要正则表达式。