regexp中的空字符和通配符

1次(最近30天)
禁闭室
禁闭室 2015年3月23日
回答: Tijs Van Oevelen2016年5月10日
当正则表达式遇到模式时,情况似乎是这样的
(46 0)
它总是匹配它后面的所有东西。
这是一种可以解释的副作用,还是只是一个bug?
例子:
>> regexp([0 0 1 0 41 41 41 41 41 41 41 41 41 41 41 41 41 41]),char([0 . 0])“。”0 40 40 40 40 40]))
ans =
2
预期的答案是[],因为41不应该与模式中的40匹配。
1评论
每•艾萨克森
每•艾萨克森 2015年3月23日
我称之为 错误 .为什么不报告给技术支持,不管它是不是一个真正的问题,金宝app你的项目。

登录并发表评论。

答案(1)

Tijs Van Oevelen
Tijs Van Oevelen 2016年5月10日
你好,
这个bug可能已经修复了。我在几个版本的Matlab中测试了您的示例:
  • 在R2013b:
>> regexp([0 0 1 0 41 41 41 41 41 41 41 41 41 41 41 41 41]),char([0 . 0])“。”0 40 40 40 40 40]))
ans =
2
  • 在R2015a:
>> regexp([0 0 1 0 41 41 41 41 41 41 41 41 41 41 41 41 41]),char([0 . 0])“。”0 40 40 40 40 40]))
ans =
2
  • 在R2016a:
>> regexp([0 0 1 0 41 41 41 41 41 41 41 41 41 41 41 41 41]),char([0 . 0])“。”0 40 40 40 40 40]))
ans =
[]

下载188bet金宝搏

社区寻宝

在MATLAB中央找到宝藏,发现社区如何可以帮助你!

开始狩猎!