让正则表达式更人性化
发布时间: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/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |