Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
js未结束的字符串常量怎么解决_字符串结束符是什么,希望能够帮助你!!!。
js提示“未结束的字符串常量”
有时候,突然会看到js提示“未结束的字符串常量”,这个提示,是怎么回事呢,
下面总结下原因
首先这个错误提醒,不是没有原因的,js的提醒一定会有我们做的不好的地方
一般这个提醒会在我们alert(“一段比较长的内容”);的时候出现,为啥有的可以弹出,有的却不行呢
其实这个和我们保存时的内容有关系,而我们去除内容的时候没有注意转换,如果保存的内容有空格,切换行了,那么就会提示这个,只要在取出内容的时候
过滤下空格和换行符号即可。
解决方法如下:
1、js实现代码
<script type="text/javascript"> /** * 去除字符串的空格或换行符 */ <!-- var questionName = " a b c "; //左右两边的空格都去掉,结果是"a b c" questionName = questionName.replace(//s*$|^/s*/g,""); //去掉所有的空格和换行符,结果为"abc" questionName = questionName.replace(//s+/g,""); //去掉右边所有的空格,结果为" a b c" questionName = questionName.replace(//s+$/g,""); //去掉左边所有的空格,结果为"a b c " //questionName = questionName.replace(/^/s*/g,""); alert(questionName) // --> </script>
附,正则表达式中的元字符:
^ 匹配字符串的开始
$ 匹配字符串的结束
/pattern/m元字符:多行查找
/pattern/g元字符:全局匹配
/pattern/i元字符:忽略大小写
/d 匹配数字
/b 匹配单词的开始或结束
/w匹配字母或数字或下划线或汉字。
/s匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。
“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次。
“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次。
“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。
2、Java代码实现
使用正则表达式进行替换:
代码片段:
String documentTxt = EntityUtils.toString(entity,"gbk");//获取数据
documentTxt=documentTxt.replaceAll("[\\t\\n\\r]", "");//将内容区域的回车换行去除
说明:String类的replaceAll就有正则替换功能。 \t为制表符 \n为换行 \r为回车
java正则使用:
示例方法:
public void parseTxt(String content){ Pattern p = Pattern.compile(Config.articlePtn); Matcher matcher = p.matcher(content); while(matcher.find()){ System.out.println(matcher.group(1)); } }
说明:只需记住Pattern类,它的静态方法complie解析一个正则表达式生成一个Pattern对象。
然后用模型去匹配字符串,得到一个Matcher,通过matcher的find方法遍历所有的匹配。
group为正则表达式中的组,及()表达式。group(0)为原字符串,gourp(1)为匹配到的第一个组...即匹配到的组的索引从1开始。
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章