Javascript中查找不以XX字符结尾的单词示例代码


Posted in Javascript onOctober 15, 2013

首先,让我声明一下,我在写这篇文章之前花了2个多小时在弄正则表达式。悲~悲~悲~

按照一般的思路,先来看看其他几个插找方式: 我以字符串

var str = "eattd gebcat gedat jadu geat beu";

?槔?印

1.以"ge"?榭?返模?峁?Ω檬?gebcat, gedat, geat"。因?榈ゴ室?ge"开头,则我可以放入一个新的数组供以后使用。

var exp1 = /\bge\w+/ig; var matchedStr = exp1.exec(str); 
while (matchedStr != null && matchedStr.index < str.length) { 
if (matchedStr[0] != null) { 
inv.innerHTML += "<br>The result is: " + matchedStr[0]; 
//newStr = newStr.replace(matchedStr[0]); 
wordsArr.push(matchedStr[0]); 
} 
matchedStr = exp1.exec(str); 
}

2.以"at"结尾的单词,结果??gebcat","gedat","geat"。同样,我可以放入数组。
var exp1 = /\w+(at\b)/ig;

3.不以"ge"开头的单词,我需要另外一个数组来存放。
var exp1 = /\b(?!ge)\w+/ig; 
var wordsArr = new Array(); 
var matchedStr = exp1.exec(str); while (matchedStr != null && matchedStr.index < str.length) { 
if (matchedStr[0] != null) { 
inv.innerHTML += "<br>The result is: " + matchedStr[0]; 
newStr = newStr.replace(matchedStr[0]); 
wordsArr.push(matchedStr[0]); 
} 
matchedStr = exp1.exec(str); 
} 
//wordsArr = newStr.split(" "); 
for (var i = 0; i < wordsArr.length;) { 
if (wordsArr[i] == "undefined") { 
wordsArr.splice(i,1); 
} else 
i++ 
}

4. 不以"at"结尾的的单词,好,问题来了。Javascript中的Regex比较弱,不支持逆环视否定,因此不能写:
var exp1 = /\w+(?<!at\b)/ig;


var exp1 = /\w+(?!at\b)/ig;

的意思中单词结尾的右边不能??at",那是不可能的,\b\w就是查找单词边界。我换一个角度来写,找到以at结尾的,把该单词从原来的字符串中删除。然后放入一个新数组。
function RegularExpTest() { 
var inv = document.getElementById("RegexTest"); 
var str = "eattd gedbcat gedat jadu geat beu"; 
var newStr = str; 
var exp1 = /\w+at\b/ig; 
var wordsArr = new Array(); 
var matchedStr = exp1.exec(str); while (matchedStr != null && matchedStr.index < str.length) { 
if (matchedStr[0] != null) { 
inv.innerHTML += "<br>The result is: " + matchedStr[0]; 
newStr = newStr.replace(matchedStr[0]); 
} 
matchedStr = exp1.exec(str); 
} 
wordsArr = newStr.split(" "); 
for (var i = 0; i < wordsArr.length;) { 
if (wordsArr[i] == "undefined") { 
wordsArr.splice(i,1); 
} else 
i++ 
} 
inv.innerHTML += "<br>The result is: " + wordsArr; 
}

OK,完成了!

思则得,不思则不得。

Javascript 相关文章推荐
精选的10款用于构建良好易用性网站的jQuery插件
Jan 23 Javascript
浅析JavaScript中的同名标识符优先级
Dec 06 Javascript
解析Javascript中难以理解的11个问题
Dec 09 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
Aug 17 Javascript
Google 地图叠加层实例讲解
Aug 06 Javascript
AngularJS动态绑定HTML的方法分析
Nov 07 Javascript
JS实现探测网站链接的方法【测试可用】
Nov 08 Javascript
js从输入框读取内容,比较两个数字的大小方法
Mar 13 Javascript
JavaScript new对象的四个过程实例浅析
Jul 31 Javascript
JS重学系列之聊聊new操作符
Mar 04 Javascript
微信小程序版本自动更新的方法
Jun 14 Javascript
vue中使用element组件时事件想要传递其他参数的问题
Sep 18 Javascript
通过js获取div的background-image属性
Oct 15 #Javascript
js日期相关函数总结分享
Oct 15 #Javascript
JavaScript的继承的封装介绍
Oct 15 #Javascript
jquery实现兼容浏览器的图片上传本地预览功能
Oct 14 #Javascript
js 距离某一时间点时间是多少实现代码
Oct 14 #Javascript
js算法中的排序、数组去重详细概述
Oct 14 #Javascript
鼠标拖动实现DIV排序示例代码
Oct 14 #Javascript
You might like
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
Web程序工作原理详解
2014/12/25 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
2016/03/07 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
javascript时区函数介绍
2012/09/14 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
2016/06/23 Javascript
Bootstrap实现登录校验表单(带验证码)
2016/06/23 Javascript
Javascript中字符串相关常用的使用方法总结
2017/03/13 Javascript
详解用node搭建简单的静态资源管理器
2017/08/09 Javascript
小程序调用微信支付的方法
2019/09/26 Javascript
基于Vue+ElementUI的省市区地址选择通用组件
2019/11/20 Javascript
nodejs实现的http、https 请求封装操作示例
2020/02/06 NodeJs
Python常用正则表达式符号浅析
2014/08/13 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
AI人工智能 Python实现人机对话
2017/11/13 Python
浅谈django rest jwt vue 跨域问题
2018/10/26 Python
python IDLE 背景以及字体大小的修改方法
2019/07/12 Python
Python values()与itervalues()的用法详解
2019/11/27 Python
浅谈pytorch torch.backends.cudnn设置作用
2020/02/20 Python
Python sorted排序方法如何实现
2020/03/31 Python
python实现简单学生信息管理系统
2020/04/09 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
2020/06/23 Python
Python实现自动签到脚本功能
2020/08/20 Python
美国知名日用品连锁超市:Dollar General(多来店)
2017/01/14 全球购物
英国护发和美妆在线商店:Klip Shop
2019/03/24 全球购物
Glamest意大利:女性在线奢侈品零售店
2019/04/28 全球购物
利群广告词
2014/03/20 职场文书
经管应届生求职信范文
2014/05/18 职场文书
贷款承诺书范文
2014/05/19 职场文书
计算机专业自荐信
2014/05/24 职场文书
学校党员个人问题整改措施思想汇报
2014/10/08 职场文书
捐助感谢信
2015/01/22 职场文书
对公司的意见和建议
2015/06/04 职场文书