`
rensanning
  • 浏览: 3549300 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38165
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:607352
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:682392
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:89392
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:401877
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69709
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:91733
社区版块
存档分类
最新评论

让正则表达式更人性化

 
阅读更多
正则表达式应该是程序员的基本功,但这种符号记法并不是很人性化。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/
  • 大小: 52.5 KB
1
3
分享到:
评论
1 楼 akandfxs 2013-08-13  
不错。有机会用用。

相关推荐

    正则表达式乱码查看器

    "正则表达式乱码查看器"是一款专为开发人员和非开发人员设计的实用工具,主要用于解决在处理正则表达式过程中可能出现的乱码问题。...同时,软件提供的多语言支持和资源链接也体现了其人性化的设计和全面的功能覆盖。

    human2regex:人性化正则表达式

    比原始文本甚至颜色编码的正则表达式更容易调试 “人类说话”可能包含评论 支持多种平台的方言/怪癖 Human2Regex将最大限度地减少您的最终正则表达式 非技术质量检查人员可以使用“人类说”来验证程序的输出 网页 ...

    RVerbalExpressions:轻松创建正则表达式

    RVerbalExpressions库引入了更加人性化的接口,允许开发者通过组合简单的方法来构建正则表达式,比如: 1. `startOfLine()`:添加开始标记`^`。 2. `find("word")`:寻找"word"。 3. `oneOrMore()`:添加"+"量词,...

    js正则表达式实现数字每隔四位用空格分隔代码

    这样的效果在填写银行卡的时候十分常见,这也是非常人性化的举措。 代码实例如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>软件开发网</title> [removed]...

    php-regexp-builder:人性化的正则表达式创作

    人性化的正则表达式创作 <?php /* ... */ $ invalidEndingCharacters = ( new RegExpBuilder ) -> expectAnyOf ( '.-' ) -> once (); $ namePattern = ( new RegExpBuilder ) -> assertNotPrecededBy ( $ ...

    正则表达式学习问答

    但是不幸的是,一直以来正则表达式的语法却没有太多的变化,甚至后续增加的功能,也沿袭了之前的语法风格,在编程语言日渐人性化的今天,它自然显得非常难懂了。今天的开发人员可能更习惯Regex.CharRange(‘a’, ‘z...

    Bulk Rename Utility(电脑批量重命名软件)官方正式版V3.4.3

    4. **正则表达式支持**:高级用户可以利用正则表达式进行复杂匹配和替换,实现更灵活的重命名规则。 5. **文件过滤**:在批量处理时,可以设置过滤条件,只对特定类型的文件或符合特定条件的文件进行重命名。 6. *...

    Bulk Rename Utility_32批量命名工具

    软件还支持正则表达式,对于有编程背景的用户来说,这提供了一种更强大的自定义方式。 此外,该工具通常会提供批量操作的保护机制,比如备份功能,以防误操作导致原始文件丢失。用户可以选择在重命名前创建备份,...

    图片下载器

    这些特性旨在提供更人性化的体验,满足不同用户的多样化需求。 此外,对于经常需要下载图片的用户,【图片下载器】还可以通过书签管理功能,保存常用的网址和对应的正则表达式,方便下次快速调用。这在处理类似任务...

    词法分析器 delphi

    在Delphi环境中构建词法分析器,可以充分利用其强大的图形用户界面(GUI)和面向对象的特性,为用户提供更美观、人性化的交互体验。 首先,我们需要理解编译原理的基础概念。编译器是将高级编程语言(如C++、Java等...

    WEB前端助手(FeHelper) V2020.5.2810

    综上所述,"WEB前端助手(FeHelper) V2020.5.2810"是一款专为前端开发人员定制的综合性工具,它以强大的功能和人性化的界面,极大地提升了开发效率,降低了工作难度。无论是处理JSON数据,还是进行正则表达式测试,亦...

    search and replace

    综上所述,"Search and Replace" 是一款为程序员量身打造的高效搜索替换工具,其强大的正则表达式支持、多文件搜索和替换功能,以及人性化的界面设计,使其成为编程工作中不可或缺的辅助软件。通过熟练掌握这款工具...

    Jquery表单验证(采用poshytip提示)

    它允许开发者自定义提示的样式、位置、颜色等,使得错误提示更具人性化,用户体验更佳。在表单验证中,我们可以利用Poshytip显示错误信息,即时反馈给用户输入的问题。 ### 3. 正则表达式 正则表达式是一种模式...

    字符替换工具

    总之,"字符替换工具charfind_fengzhiyu"以其全面的功能和人性化的操作体验,为用户带来了高效、便捷的文本处理解决方案。无论是在编程、写作还是数据分析的过程中,它都是一个值得信赖的助手。通过熟练掌握这款工具...

    Flexible Renamer v8.3

    《灵活重命名器v8.3:批量改名的艺术与实用性》 ...无论是个人用户还是企业用户,都可以从其强大的功能和人性化的设计中受益。在数字化的世界里,掌握这样的工具,无疑会使我们的工作变得更加便捷和有序。

    精易精易编程助手助手

    此外,界面的改进也意味着用户可以更高效地操作,体验更人性化的交互设计,减少误操作的可能性,提升工作效率。 新增的“网页分析”功能是该助手的一大亮点。在网页开发和测试过程中,理解网页元素的交互行为至关...

    js 表单验证网页特效

    JavaScript(简称JS)是网页开发中不可或缺的一部分,尤其在表单验证方面,它扮演着至关重要的角色。在网页设计中,表单验证是确保用户输入...通过不断学习和实践,开发者可以创建出更加智能和人性化的表单验证效果。

    手机号码和email校验的Js代码

    根据提供的文件信息,我们可以总结出以下相关知识点: ### 1. 正则表达式的使用 在JavaScript中,正则表达式是一种非常强大的文本处理...此外,还可以考虑增加更多人性化的提示信息和错误处理机制,提高用户体验。

    jquery 表单验证

    还可以利用正则表达式进行更复杂的数据格式验证,如检查密码的复杂度,确保包含数字、字母和特殊字符的组合。 接下来是用户名验证。用户名通常要求唯一且不含有非法字符。jQuery结合服务器端API,可以实时检查...

    批量重命名 ReName v7.1

    这种人性化的设计使得即便是对电脑操作不太熟练的用户也能轻松上手。 该软件的功能异常强大,不仅提供了多种预设的重命名规则,如添加前缀、后缀,数字序列化等,还支持自定义规则,用户可以根据自己的需求定制个性...

Global site tag (gtag.js) - Google Analytics