让正则表达式更人性化

正则表达式应该是程序员的基本功,但这种符号记法并不是很人性化。[url=https://github.com/VerbalExpressions]VerbalExpressions[/url] 通过链式方法和更易于理解的方法名使正则表达式的书写更简单、更易读。最初的VerbalExpressions是一个JavaScript的library,不过目前已经有很多语言(Ruby、C#、Python、Java、Groovy、PHP、Haskell、C++、Objective-C)的实现版本。

[url=https://github.com/VerbalExpressions/JSVerbalExpressions]https://github.com/VerbalExpressions/JSVerbalExpressions[/url]

[size=x-large][b]Examples[/b][/size]

[size=large][b]Testing if we have a valid URL[/b][/size]
// 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\.)?([^\ ]*)$/


[size=large][b]Replacing strings[/b][/size]
// 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"


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


同时推荐一个在线的正则表达式可视化工具:[url=http://www.regexper.com/]http://www.regexper.com/[/url]
[img]http://dl2.iteye.com/upload/attachment/0088/1376/754f5788-3830-3ec6-a3ae-783fad32cc91.jpg[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值