Regex拆分:需要模式帮助
本文关键字:模式 帮助 拆分 Regex | 更新日期: 2023-09-27 18:23:56
我有点拘泥于此。我有一个类似的字符串
18=abcd1, 19=jghrt23, 20=outut
我必须以这样一种方式分割给定的字符串,即得到18、19、20的列表。
我能做的最好的是=(.*'w,)[^'D+=]
,但显然它不起作用,
注意:我可以通过先使用string.split by",",然后使用"="来轻松完成,但我想使用regex,以便能够学习它。我想使用Regex.Split
我认为Split
不适合执行此任务。
用途:
var result = Regex.Matches(input, @"'d+(?==)").Cast<Match>().Select(s => s.Value);
AFAIK您不能用一个正则表达式来实现您的要求,或者至少您无法获得单个组。您可以使用两个步骤:
- 获取下一个逗号分隔的元素,例如使用regex
^('d+='w*),(.*)$
。为此,您需要将剩余的字符串存储在某个位置以处理更多的元素 - 使用
^('d+)='w+$
从一个元素中提取数字,并将其存储在某个位置
附言:我假设=之后只有字母数字字符。