替换'?'对于模式中的'*',如果存在匹配,则会改变这一事实?

时间:2015-03-16 00:03:49

标签: regex

我必须执行一项任务,此任务是向程序添加一些功能,以确定文本中是否存在模式(均由键盘输入)。

已经给我的程序可以确定在文本中使用字符'*'(匹配前一个字符的零次或多次出现)的模式之间是否匹配。现在,要求添加的功能之一是能够使用字符'?'在模式中(前面的元素中有零个或一个)。

我的问题是: 因为我必须改进的程序不确定匹配的位置,但只会确定是否有匹配...我可以考虑'?'作为角色'*'?

我开始思考,我得出的结论是,如果一个模式具有'*'字符,并且该字符被'?'取代,那么它将不会改变这样一个事实,即如果匹配或不匹配

你的想法是什么?我是对还是不对?

1 个答案:

答案 0 :(得分:0)

对于只有一个量词的模式,后面没有文本,它的工作方式相同。

对于不能使用相同功能的示例,模式ba*h将匹配文字baaaaaaaaah,但模式ba?h赢了。