加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

让正则表达式更人性化

发布时间:2020-12-14 02:18:03 所属栏目:百科 来源:网络整理
导读:正则表达式应该是程序员的基本功,但这种符号记法并不是很人性化。 VerbalExpressions 通过链式方法和更易于理解的方法名使正则表达式的书写更简单、更易读。最初的VerbalExpressions是一个JavaScript的library,不过目前已经有很多语言(Ruby、C#、Python、J
正则表达式应该是程序员的基本功,但这种符号记法并不是很人性化。 VerbalExpressions 通过链式方法和更易于理解的方法名使正则表达式的书写更简单、更易读。最初的VerbalExpressions是一个JavaScript的library,不过目前已经有很多语言(Ruby、C#、Python、Java、Groovy、PHP、Haskell、C++、Objective-C)的实现版本。

https://github.com/VerbalExpressions/JSVerbalExpressions

Examples

Testing if we have a valid URL
// Create an example of how to test for correctly formed URLs
var tester = VerEx()
            .startOfLine()
            .then( "http" )
            .maybe( "s" )
            .then( "://" )
            .maybe( "www." )
            .anythingBut( " " )
            .endOfLine();

// Create an example URL
var testMe = "https://www.google.com";

// Use RegExp object's native test() function
if( tester.test( testMe ) ) alert( "We have a correct URL "); // This output will fire
else alert( "The URL is incorrect" );

console.log( tester ); // Ouputs the actual expression used: /^(http)(s)?(://)(www.)?([^ ]*)$/


Replacing strings
// Create a test string
var replaceMe = "Replace bird with a duck";

// Create an expression that seeks for word "bird"
var expression = VerEx().find( "bird" );

// Execute the expression like a normal RegExp object
var result = expression.replace( replaceMe,"duck" );

alert( result ); // Outputs "Replace duck with a duck"


Shorthand for string replace
var result = VerEx().find( "red" ).replace( "We have a red house","blue" );
alert( result ); // Outputs "We have a blue house"


同时推荐一个在线的正则表达式可视化工具: http://www.regexper.com/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读