我想了解这个代码块。
如果$
元字符结束比赛,为什么"我丢失了钱包"有效?
我了解量词:?
在搜索中只允许一个:
或者没有,但为什么有两个相同的答案?
你能算出这种模式的所有可能匹配吗?
" ^我丢了我的:? (钱包|汽车|手机|弹珠)$"
给出的答案是:
"我丢了钱包"
"我丢了钱包"
"我丢了我的钱包"
"我丢失了我的钱包"
"我丢了车"
"我丢了车"
"我丢了我的车:"
"我丢了我的车:"
"我丢失了手机"
"我丢失了手机"
"我丢失了我的手机"
"我丢失了我的手机"
"我丢失了大理石"
"我丢失了弹珠"
http://www.ocpsoft.org/opensource/guide-to-regular-expressions-in-java-part-1 测验2.2
答案 0 :(得分:0)
quiz中提出的问题(向下滚动一点)是:
你能算出这种模式的所有可能的匹配吗?
"I lost my:? (wallet|car|cell phone|marbles)"
答案是:
这是一个棘手的问题!因为这个正则表达式是无限的(没有开头
^
而没有结尾$
)
之后会显示您正在查看的正则表达式。
“我遗失了钱包”仅对上面显示的正则表达式有效。第二个(在你的问题中)不允许它。
以下是描述情况的图片:
答案 1 :(得分:0)
更新
它不匹配。这似乎是一个错字。他们说:
如果我们确实想要将我们的模式限制为这些结果,我们可以 使用为我们的模式添加所需的终结符
他们使用了 limit
这个词,他们提供的格式 to just these results
不准确。这两句话不匹配:
"I lost my wallets"
"I lost my: wallets"
同样,它似乎就像作者的拼写错误。