Tag: regex

Javascript Node.js Unicode正则expression式

我需要inputvalidation,良好的inputvalidation,以保持一切清洁。 所以我想在“全名”,国际上严格的正则expression式,所以我需要Unicode支持。 我下载了XRegExp,它将“他们的格式”编译为正则expression式,并支持Unicode: 正确的名字: 约翰·埃尔克耶德 安德烈·斯文森 Marco d'Almeida Kristoffer la Cour 不正确的名字: 汉斯 H4nn3安徒生 马丁·亨里克森! 所以我需要: 匹配unicode字母(a,æ) 匹配unicode口音(á,Ë等) 匹配unicode连字符( – _等) 在PHP中,我可以执行以下操作来匹配: \p{L} (unicode letter) \p{Mn} (unicode accents) \p{Pd} (unicode hyphens) 我发现,我可以用XRegExp做: ^ \ p {L} + $会匹配'日本'所以只有一个字母的作品,但我怎样才能弄清楚如何做这些unicode的口音,hypens? 感谢帮助。

使用RegExp从url获取数据

我有页面上的博客链接列表 <ul class="postlist"> <li><a href="http://someblog.it/blogpost/7/—–.aspx">Post One</a></li> <li><a href="http://someblog.it/blogpost/32/———-.aspx">Post Two</a></li> <li><a href="http://someblog.it/blogpost/382/—–.aspx">Post Three</a></li> <li><a href="http://someblog.it/blogpost/5782/———–.aspx">Post Four</a></li> <li><a href="http://someblog.it/blogpost/11682/———–.aspx">Post Five</a></li> </ul> 并希望从这个URL的斜杠之间的所有数字的数组 $('a').each(function (index){ var str = $(this).attr('href'); var a = str.search(/[0-9]+/); var b = str.search(/-); console.log(str.substring(a,b)); }); 像7,32,382,5782,11682那样 http://jsfiddle.net/sYH56/

只从Express静态目录服务.js文件?

我正在查找是否有可能从Express.js静态目录中只提供一种types的文件(通过扩展名筛选)。 例如,假设我有以下静态目录: Static FileOne.js FileTwo.less FileThree.html FileFour.js 并说,我只想使任何给定的请求只有扩展名为.js文件,所有其他请求将得到一个500响应(或类似的东西)。 我将如何去实现这一目标? Express是否具有我无法find的烘焙filter,还是我需要使用正则expression式?

如何用Node.js中的ASCII引号replace非ASCII引号?

我试图用ASCII单引号( ' )来replace所有出现的非ASCII引号(如' , ' , “和” ),因为当我写入一个文件时,它们会出现这样的结果: Peterson’s ,而不是Peterson's 。 我试着用下面的正则expression式: paragraph.replace(/"/g, "'"); 但是这不起作用。 我如何指定我想在我的正则expression式中replace所有这些非ASCII字符?

mongoose'或'和'喜欢'运营商node.js

我想实现search我的网页。 所以从前端我得到了来自用户的inputsearch值,我需要在我的数据库search3行限制。 所以我需要这样的SQL查询:SELECT * FROM PRODUCTS p WHERE p.title like'%user_value%'或p.sku like'%user_value%' 我试图这样做: router.get('/search', function(req, res, next) { var value = req.query.val; var query = Product.find({"title": new RegExp('/' + value+'/')}).limit(3); query.exec(function(err, products) { if (!err) { // Method to construct the json result set var result = JSON.stringify(products); log.info(products); res.send(result, { 'Content-Type': 'application/json' }, 200); } […]

删除用户写下的所有文字

我使用Outlook API来获取发送的电子邮件的正文。 现在,我想清理身体删除所有链接,标题等,只保留用户写的文字。 以下是我的正则expression式函数: function getRegex() { var regex1 = /^(?=.*Forwarded message)[^]*/m; var regex2 = /^(?=.*From: )[^]*/m; var regex3 = /^(?=.*On )[^]*/m; var regex4 = /^(?=.*http)[^]*/m; return new RegExp("(" + regex1.source + ")|(" + regex2.source + ")|(" + regex3.source + ")|(" + regex4.source + ")"); } 以下是从Outlook中获取发送的电子邮件的function: outlook.mail.getMessages({ token: token.token.access_token, odataParams: queryParams, folderId: 'SentItems' }, […]

在导入到JSON格式的MongoDB之前,清理HTTP响应头中的非法字符

在使用Node.js请求HTTP响应并将其导入到MongoDB时,我注意到一个或两个URL将包含非法字符的标题(因为它们正在使用键),当我尝试导入到MongoDB时,这将导致整个脚本崩溃。 下面是一个例子: { "url": "divensurf.com", "statusCode": 200, "headers": { "x-varnish": "2236710953 2236710300", "vary": "Accept-Encoding,Cookie,X-UA-Device", "cache-control": "max-age=7200, must-revalidate", "x-cache": "V1HIT 2", "content-type": "text/html; charset=UTF-8", "page.ly": "v4.0", "x-pingback": "http://divensurf.com/xmlrpc.php", "date": "Thu, 21 Mar 2013 19:40:59 GMT", "transfer-encoding": "chunked", "via": "1.1 varnish", "connection": "keep-alive", "last-modified": "Thu, 21 Mar 2013 19:40:57 GMT", "age": "2" } } 标题/键"page.ly"会使脚本崩溃,因为它包含非法字符. 。 在将这个文档导入到MongoDB之前,有没有什么方法可以通过删除这些非法字符来清除引用中包含的这个键/头? […]

正则expression式匹配variables

我试图testing下面的正则expression式,但我无法得到它的工作。 我使用regex101,但任何人都可以build议如何纠正或格式化正则expression式? 我有一个数组 – 用5个元素称为arr []。 arr [0]需要是可变数量的字母,即一个单词的名称。 arr [1]必须是单字或双字的名称(即可变数量的字母或可变数量的字母,后跟空白字符,后跟可变数量的字母) arr [2]需要连续10个数字(例如123432908623,也可以从0开始) arr [3]必须是以下格式的社会安全号码 – 3位数字后跟空白,后跟2位数后跟4位(例如123 45 6848) arr [4]需要是带有区号的电话号码,格式如下:左括号后面跟着3位数字,后面跟着括号,然后是空格,后面跟着左括号,后面跟着3位数字,后面跟着括号,然后是空格,然后是左括号接着是4位数字,然后是右括号(例如(123)456 1234) 这是我开始的一些代码: for(var i = 0; i<arr.length; i++){ var str1 = arr[i][0]; var pat1 = /^\s'w+?'/; var first = pat1.test(str1); console.log(first); var str2 = arr[i][1]; var pat2 = /\s'\w+(?:\s\w+)?'/; var second = pat2.test(str2); console.log(second); var […]

正则expression式从数据获取电子邮件ID

是新的常规experssion我有以下数据从这我想要得到唯一的电子邮件ID.How是可能的使用正则expresison commit 01 emailid: Tests <tests@gmail.com> Date: Wed Jun 18 12:55:55 2014 +0530 details commit 02 emailid: user <user@gmail.com> Date: Wed Jun 18 12:55:55 2014 +0530 location commit 03 emailid: Tests <tests@gmail.com> Date: Wed Jun 18 12:55:55 2014 +0530 france24 commit 04 emailid: developer <developer@gmail.com> Date: Wed Jun 18 12:55:55 2014 +0530 seloger 从这个使用常规experssion如何retirve tests@gmail.com,user@gmail.com,developer@gmail.com

如何使用JavaScriptparsing包含换行符的CSV数据

给定一个在某些字段中有换行/返回字符的CSV文件,我们如何parsing数据而不将字段分成多行。 CSV数据示例: ID;Name;Country;ISO-2;Address;Latitude;Longitude 022wje3;Europa;Italy;IT;"Viale Kennedy 3 34073 Grado";"45,67960";"13,40070" 024oua5;Hiberia;Italy;IT;"Via XXIV Maggio 8 00187 Rome";"41,89720";"12,48680" 028gupn;Regal Riverside;Hong Kong;HK;"34-36 Tai Chung Kiu Road Shatin Hong Kong";"22,38260";"114,19600" 02j7qry;Okaliptus Holiday Villas Apart;Turkey;TR;"Sevket Sabanci Caddesi No. 70 Bahçelievler Mevkii Turgutreis";"37,02130";"27,25120" 02pc99z;California Apartementos;Spain;ES;"Prat d'en Carbó 43840 Salou";"41,07620";"1,14667" 02tu1jz;Elvis Presley's Heartbreak;United States;US;"3677 Elvis Presley Blvd. Memphis Tennessee 38116";"35,04850";"-90,02710" 注意:字段实际上是用分号隔开的; 因为地址可以包含逗号 每行有7个字段,但我们不希望错误地parsing包含换行字符的字段中的数据为多行… 我们在StackOverflow上find了几个关注Perl的答案: […]