js与java正则表达式处理字符串问题
2024-10-18 23:25:09
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。合理使用正则表达式确实会为程序员省去很多字符处理的工作,高速而有效。
正则表达式的语法与使用规范可以参考http://deerchao.net/tutorials/regex/regex.htm
这里说说用js和java程序处理字符串的一点问题:
<script type="text/javascript"> function check(){
var str = $('#str').val();
str = str.replace(/[\r\n]/g,"");//去掉回车换行
str = str.replace(/[ ]/g,""); //去掉空格
str = str.replace(/\\|\//g,"");//去斜杠
str = str.replace(/"([^"]*)"/g, "“$1”"); //将半角引号转换全角双引号
str = str.replace(/"([^']*)"/g, "‘$1’");//将半角引号转换全角单引号
alert(str);
} </script>
用占位符的方法可处理成对出现的字符,方便快捷。对比用java程序处理类似的字符串可以这样写:
package com.test.processstr;
public class ProcessString {
public static void main(String[] args) {
String source = "\"We [are]\" \'family here\',come \\ {on} girl and boy! $$ \n";
String dest = "";
if (source!=null) { dest = source.replaceAll("\\s*|\t|\r|\n|\\\\|,","");
dest = dest.replaceAll(",",",");
System.out.println("去掉换行空格斜杠符号后的字符串:" + dest); dest = dest.replaceAll("\"(.*?)\"", "“$1”");
System.out.println("替换英文双引号符号后的字符串:" + dest); dest = dest.replaceAll("\'(.*?)\'", "‘$1’");
System.out.println("替换英文单引号符号后的字符串:" + dest); dest = dest.replaceAll("\\[(.*?)\\]", "【$1】");
System.out.println("替换中括号符号后的字符串:" + dest); dest = dest.replaceAll("\\{(.*?)\\}", "{$1}");
System.out.print("替换中括号符号后的字符串:" + dest);
} } }
也可以使用util包下的Pattern Matcher 类来实现java的正则表达式处理。
最新文章
- Linux下的C Socket编程 -- server端的继续研究
- JavaACOFramework的各个类介绍(part2 : Ant4AS类)
- 【HDU】4418 Time travel
- python学习-day12:列表、元祖、字典介绍和内置
- LeetCode OJ-- Sort List **@
- C# 序列化(二)二进制序列化的案例
- wamp集成环境php多版本搭建(php5.5,php5.6,php7.0.6)
- Adapter 模式
- 【剑指offer】二叉树中和为某一值的路径
- (转)Javascript 面向对象编程(一):封装(作者:阮一峰)
- 帝国cms内容页模版
- Echarts数据可视化series-graph关系图,开发全解+完美注释
- FatMouse and Cheese
- 内网神器-Bettercap
- 【转】sed &; awk常用正则表达式
- wamp的mysql设置用户名和密码
- 【6】-BAT面试之操作系统内存详解
- ArrayList和Vector区别及源码
- GIS之家小专栏
- NAS (Network Attached Storage)