正则表达式 – Lua模式括号和0或1次出现
发布时间:2020-12-14 02:29:55 所属栏目:百科 来源:网络整理
导读:我正在尝试将字符串与模式匹配,但有一件事我还没弄清楚.在正则表达式中我会这样做: Strings:enengenglenglienglisenglishPattern:^en(g(l(i(s(h?)?)?)?)?)?$ 我希望所有的字符串都匹配. 在Lua模式匹配中,我无法使其工作. 即使是这样一个更简单的例子也行不
我正在尝试将字符串与模式匹配,但有一件事我还没弄清楚.在正则表达式中我会这样做:
Strings: en eng engl engli englis english Pattern: ^en(g(l(i(s(h?)?)?)?)?)?$ 我希望所有的字符串都匹配. 即使是这样一个更简单的例子也行不通: Strings: fly flying Pattern: ^fly(ing)?$ 有人知道怎么做这个吗?
你不能使用Lua的量词?,*和 – 来使匹配组可选(或重复它们).
在模式(%d)?中,问号“失去”其特殊含义并将简单地匹配文字?正如你可以通过执行以下代码行看到的: text = "a?" first_match = text:match("((%w+)?)") print(first_match) 将打印: a? AFAIK,你最接近Lua的将是使用这种模式: ^eng?l?i?s?h?$ 其中(当然)匹配“enh”,“enls”等字符串. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- fastjson过滤属性,重点在于PropertyFilter 这个东西(应用
- Oracle中left join,right join,inner join分析
- 关于Flash air实现Android原生Activity生命周期函数的方法
- 如何使ON DELETE CASCADE在sqlite 3.7.4中工作?
- 部署 – Capistrano编译资产错误 – 资产:预编译:非文化?
- xml – 将控件停靠在Docked FlowLayoutPanel中
- xml – 为什么这个XDocument验证失败?
- 一篇带你看懂Flutter叠加组件Stack
- ios – 设置一个plist来存储iPhone游戏的应用程序数据(而不
- ruby-on-rails-3 – 使用activerecord会话存储的cookie到期