导航:首页 > 编程语言 > java正则字符转义

java正则字符转义

发布时间:2022-09-23 06:03:01

‘壹’ java 字符串 转义

public String str = "我是字符串\\n";
在C#中 @ 表示原意字符串,而在JAVA中则没有。
例如:
在C#中可以这样定义字符串。
string text = @"My pensive SARA ! thy soft cheek reclined
Thus on mine arm, most soothing sweet it is
To sit beside our Cot,...";

但是在JAVA中,这就会出错,你必须使用“+”符号将两行字符连接起来。

‘贰’ java正则 /\t/ new RegExp("\\t") 为什么要双转义

因为java的正则表达式在是字符串里的,\是java字符串中的转义符。\也是正则表达式中的转义符。那么只加一个\的话,只能说明在字符串中转义符,而java需要进一步把普通字符串中的\变成正则表达式中的\,像是更深一则转化的意思,这样\\以后的意思是正则表达式中的转义符(\)。
要把\把变成正则表达式中的\,所以\\是转义了一个\
我的回答简而言之,在java中(别的语言有别的规矩),正则表达式字符串,和普通字串是两个东西。

‘叁’ java正则表达式式中的转义符问题

因为正则表达式的\是转义符
同时\有事java的字符串的转义符
我们换个说法
假设正则比表达式里面用$作为转义符,你要查找\就要写为$\
而java字符串里面,\是转义符,所以需要写成$\\
我们假设后面转义好的\\为a,则是$a
再把$转化为真实的\,同时java里面\需要转义,所以是\\a
把a替换回去就是\\\\
只写2的话,是转义符后面有需要转义的东西,所以出错

‘肆’ java 正则匹配修改字符串

在java里面,'\'被当作转义字符,'\r'、'\n'分别表示回车换行,'\t'是制表符,这些楼主应当知道吧。我不明白楼主为何要在哪里加\r\n,是想要输出换行,还是想就显示成\r\n。至于这里为什么会出现这种结果,我猜测可能是Pattern类匹配时是按行来的,具体是不是这样,楼主可以自己用eclipse工具查看一下compile的源码。我这里现在没有工具,所以不能替你查了。compile("(<span.*?>)(.*)(</span>)",Pattern.CASE_INSENSITIVE);我认为应当有一个类似Pattern.CASE_INSENSITIVE的公有静态参数可以控制不处理换行符的,楼主自己看看。

‘伍’ JAVA中正则双斜线和单斜线转义的问题

在java里面反斜杆是转义的意思,在正则表达式里面反斜杆也是转义的意思。java里面2个反斜杆,实际输出的是一个反斜杆。你那个正则表达式实际的验证规则是 \[(.*)\] ".*"。由于[]中括号是正则表达式里面的关键字,所以要转义。所以你最终匹配的样式是[(.*)] ".*"这个样子的。

‘陆’ java正则,转义的意思,不太理解

转义就是把特殊字符转义为普通字符

‘柒’ 请教java正则表达式的转义字符问题

1 /**
2 * 转义正则特殊字符 ($()*+.[]?\^{}
3 * \\需要第一个替换,否则replace方法替换时会有逻辑bug
4 */
5 public static String makeQueryStringAllRegExp(String str) {
6 if(StringUtils.isBlank(str)){
7 return str;
8 }
9
10 return str.replace("\\", "\\\\").replace("*", "\\*")
11 .replace("+", "\\+").replace("|", "\\|")
12 .replace("{", "\\{").replace("}", "\\}")
13 .replace("(", "\\(").replace(")", "\\)")
14 .replace("^", "\\^").replace("$", "\\$")
15 .replace("[", "\\[").replace("]", "\\]")
16 .replace("?", "\\?").replace(",", "\\,")
17 .replace(".", "\\.").replace("&", "\\&");

‘捌’ java 正则表达式\\d什么意思

实际上是\d,因为Java中\是转义字符前导符,所以在字符串中书写\必须得写成\\才能正确识别,所以正则表达式中的\d就表示为\\d的。至于正则表达式各捕获的含义,规则很多,详情网上可以搜,Java API文档也能查到,从String的match方法那里找。\d表示数字

‘玖’ JAVA中的正则表达式“\\[([^\\]]+)\\]”这个表示什么意思两个转义字符是为了表达什么

在正则中括号表示字符集,要表示中括号字符必须转义

整个正则匹配 中括号中的内容
开头的\\[ 匹配" [ "字符
尾部的\\]匹配 “]"字符
中间的[([^\\]]+),表示所有非"]"字符组成的字符串

‘拾’ java正则表达式当中\d中的\是转义的意思吗

正则表达式中“[”这样的字符有特殊的意义,所以需要写成“\[”。但是“\”本身也是具有特殊意义的转义字符。

所以“\[”就需要写成“\\[”。需要先对“\”进行一次转义

阅读全文

与java正则字符转义相关的资料

热点内容
pdf光子 浏览:832
自拍软件文件夹名称大全 浏览:325
程序员留学移民 浏览:49
梁中间部位箍筋加密区 浏览:117
频谱分析pdf 浏览:750
乐2怎么升级安卓70 浏览:172
java中获取日期 浏览:506
单片机74hc245 浏览:272
美国历史上的总统pdf 浏览:751
程序员脱单实验室靠不靠谱 浏览:459
php中间四位手机号 浏览:870
永旺app怎么样了 浏览:518
压缩空气流量计算软件 浏览:650
智慧聊天app怎么激活 浏览:925
一加换机备份到哪个文件夹 浏览:737
支撑pdf 浏览:417
java空文件夹删除 浏览:588
安卓9跟81有什么区别 浏览:914
n1蓝宝书pdf 浏览:245
为什么安卓机拍照那么丑 浏览:696