• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >ruby > 浅析Ruby中的正则表达式的使用

浅析Ruby中的正则表达式的使用

作者:goldensun 字体:[增加 减小] 来源:互联网

goldensun 通过本文主要向大家介绍了ruby正则表达式,ruby 正则,ruby,ruby碧玺,ruby woo口红等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com


    如果只是需要中查找字符串的 text, 不要使用正则表达式:string['text']

    针对简单的结构, 你可以直接使用string[/RE/]的方式来查询.

  match = string[/regexp/]       # get content of matched regexp
  first_group = string[/text(grp)/, 1] # get content of captured group
  string[/text (grp)/, 1] = 'replace' # string => 'text replace'

</div>

    当你不需要替结果分组时,使用非分组的群组。

  /(first|second)/  # bad
  /(?:first|second)/ # good

</div>

    不要使用 Perl 遗风的变量来表示匹配的正则分组(如 $1,$2 等),使用 Regexp.last_match[n] 作为替代。

  /(regexp)/ =~ string
  ...

  # bad
  process $1

  # good
  process Regexp.last_match[1]

</div>

    避免使用数字化命名分组很难明白他们代表的意思。命名群组来替代。

  # bad
  /(regexp)/ =~ string
  ...
  process Regexp.last_match[1]

  # good
  /(?<meaningful_var>regexp)/ =~ string
  ...
  process meaningful_var

</div>

    字符类有以下几个特殊关键字值得注意: ^, -, \, ], 所以, 不要转义 . 或者 [] 中的括号。

    注意, ^ 和 $ , 他们匹配行首和行尾, 而不是一个字符串的结尾, 如果你想匹配整个字符串, 用 \A 和 \Z。

  string = "some injection\nusername"
  string[/^username$/]  # matches
  string[/\Ausername\Z/] # don't match

</div>

    针对复杂的正则表达式,使用 x 修饰符。可提高可读性并可以加入有用的注释。只是要注意空白字符会被忽略。

  regexp = %r{
   start     # some text
   \s      # white space char
   (group)    # first group
   (?:alt1|alt2) # some alternation
   end
  }x

</div>

    sub/gsub 也支持哈希以及代码块形式语法, 可用于复杂情形下的替换操作.

</div>

您可能想查找下面的文章:

  • Ruby中case表达式详解
  • 使用Ruby re模块创建复杂的正则表达式
  • ruby 正则表达式 教程
  • ruby 正则表达式详解及示例代码
  • Ruby程序中正则表达式的基本使用教程
  • 详解Ruby中正则表达式对字符串的匹配和替换操作
  • 浅析Ruby中的正则表达式的使用
  • Ruby中使用正则表达式的基础指引
  • 举例初步讲解Ruby中的正则表达式

相关文章

  • 什么是ruby和Ruby概述
  • 冒泡排序算法及Ruby版的简单实现
  • 详解Ruby中的异常
  • 艰难完成 nginx + puma 部署 rails 4的详细记录
  • Ruby的字符串与数组求最大值的相关问题讨论
  • Ruby中字符串左侧补零方法实例
  • 对Ruby on Rails进行高效的单元测试的教程
  • ruby开发的交互式程序例子
  • 详解Ruby on Rails中的mailer相关使用
  • Ruby常量查找路径问题深入研究

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Ruby on Rails实现最基本的用户注册和登录功能的教程
    • mac os gem安装json出现error failed的解决办法
    • Ruby on Rails中MVC结构的数据传递解析
    • Ruby实现命令行中查看函数源码的方法
    • ruby 迭代器使用方法
    • 在Ruby中创建和使用哈希的教程
    • 详解Ruby当中的算数运算
    • Rails Routes中new、collection、member的区别浅析
    • 详解Ruby中的单件方法和单件类
    • Ruby面向对象编程中类与方法的基础学习

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有