iteye_5425 2008-08-06 13:02
浏览 254
已采纳

求包含字符串 “AAA”,而且不包含字符串 “BBB”"的正则表达式

a = /(^((?!gif).)*$)/i
a1= /php/i

b = "a string XXXXX"

puts "ok" if (b =~ a) and (b =~ a1)

请问把a和a1两个表达式合并怎么写?
表示:"同时匹配,包含字符串 “php”,而且不包含字符串 “gif”"的表达式.

谢谢!~~~~

  • 写回答

1条回答 默认 最新

  • iteye_304 2008-08-06 14:28
    关注

    [code="ruby"]
    /^((?<!gif).)*(?<!gif)php(?!gif)(.(?!gif))*$/
    [/code]

    注意用到了 look behind assertion,如果是用于 Ruby,1.8 系列内置的正则表达式引擎是不支持的,需要用 gem 安装用于 1.9 的正则表达式引擎 Oniguruma。

    [code]gem install oniguruma[/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测