除了使用交替使用正则表达式捕获组之外,我一直在拼命地返回文本字符串。这就是我所拥有的;
(?<make>(?:\w*|\w*\s\w*));(?<score1>\d{1,2});(?<score2>\d{1,2});(?<model>\w{1,})(?(model)No|Yes)
我的数据;
Austin;1;2;Taxi
Audi;2;4;Quattro
BMW;4;5;M3
Ferrari;10;10;F40
Fiat;4;2;Panda
所有捕获组都可以正常工作,但是当我添加交替语句(?(model)No|Yes)
时,它会失败,并且不会返回任何内容。我有点卡住并试图以多种方式重新排列表达式,应用程序Expresso说声明的最后一部分是带有yes和no子句的条件表达式,“名为[model]的捕获是否匹配?”
非常感谢任何帮助!
答案 0 :(得分:2)
替换语句表示:如果指定的组model
已匹配,则尝试匹配No
,如果尚未匹配,则尝试匹配Yes
。两者都失败的原因很明显。你打算如何改变交替?