使用正则表达式提取文字并过滤中间的字符
假设有字符串:var str = '我是中国人</span>我爱中国';
我们可以使用以下代码提取字符串并去掉HTML标签:
var result = str.replace(/[<][/]?\\w+[>]/g, '');
解析:此代码使用replace方法及正则表达式来去除不必要的标签。
正则表达式解释:
/内容/
:表示这是一个正则表达式对象。[<]
:表示匹配开头的尖括号。[/]?
:表示可以选择性匹配结束符号,目的是匹配开始标签和结束标签。\w+
:匹配字母和数字,若需匹配其他字符,建议使用.*
。[>]
:匹配结束尖括号。/内容/g:
加上g
参数代表全局匹配。
关于全局匹配的说明:
- 对于
exec
方法,若未加g
,仅返回第一个匹配,若加上g
,则可以依次获取所有匹配。 - 对于
test
方法,加不加g
没有区别。 - 对于
match
方法,未加g
时只返回第一个匹配,加入g
则返回所有匹配。 - 对于
replace
方法,未加g
则只替换第一个匹配,加上g
则替换所有匹配。 - 对于
split
和search
方法,加不加g
没有区别。
提取特定格式的字符串
若字符串为:{dfghjkl},{中国人,321312,312321},{312312,321}
可以使用以下代码进行提取:
var m = str.match(/\{[^}]*\}/gm); // m instanceof Array or m===null
console.log(m);
验证字符串是否包含汉字
使用以下代码:
<script language="javascript"> var zfc = "中国人jiancha"; if(/[\\u4E00-\\u9FA5]/.test(zfc)) { alert("有汉字"); } else { alert("无汉字"); } </script>
著名中国程序员
- Corrinne Yu - 被誉为最牛的女游戏程序员。
- 陈盈豪 - CIH病毒的作者,极具天赋。
- 龚蔚 - 网络安全先锋,红客运动的发起者。
- 求伯君 - 金山WPS的创始人。
- 张宴 - 消息队列服务httpsqs作者。
- Axel Lin, yinghai lu, herber xu - 在Linux内核贡献上有突出表现的程序员。
关于Java和JavaScript的区别
Java和JavaScript是两种截然不同的编程语言,JavaScript并不是sun公司的产品。
浏览器中的JavaScript代码常常引起安全提示,因为早期有不少恶意代码通过JavaScript发布,导致用户体验不佳。
发表评论