java反斜杠_如何在字符串中使用反斜杠(\)?-程序员宅基地

技术标签: java反斜杠  

(请参阅答案末尾的ES2015更新。)

您已经标记的问题都string和regex。

在JavaScript中,反斜杠在字符串文字和正则表达式中都有特殊含义。如果你想在字符串或正则表达式中使用实际的反斜杠,你必须写两个:\\。

这个字符串以一个反斜杠开头,你在文字中看到的第一个是一个转义字符,告诉我们按字面意思取下一个字符:var str = "\\I have one backslash";

这个正则表达式将匹配单个反斜杠(不是两个); 再一次,你在文字中看到的第一个是一个转义字符,告诉我们按字面意思取下一个字符:var rex = /\\/;

如果您使用字符串来创建正则表达式(而不是像我上面那样使用正则表达式文字),请注意您正在处理两个级别:字符串级别和正则表达式级别。因此,要使用与单个反斜杠匹配的字符串创建正则表达式,最终使用四个:// Matches *one* backslashvar rex = new RegExp("\\\\");

那是因为首先,你正在编写一个字符串文字,但你想在其中放入反斜杠。所以你要\\为你想要的每一个反斜杠做到这一点。但是你的正则表达式也需要两个\\你想要的每个真正的反斜杠,所以它需要在字符串中看到两个反斜杠。因此,共有四个。这是我new RegExp(string)尽可能避免使用的原因之一; 我很容易混淆。:-)

ES2015更新

快进到2015年,正如Dolphin_Wood指出新的ES2015标准为我们提供了模板文字,标签功能和String.raw功能:// Yes, this unlikely-looking syntax is actually valid ES2015let str = String.raw`\apple`;

str结束有字符\,a,p,p,l,和e在它。请注意,${在“字符串”(模板)中没有,因为这是模板文字并${开始替换。例如:let foo = "bar";let str = String.raw`\apple${foo}`;

......结束了\applebar。另请注意,这与C#中的“逐字”字符串不太相似,因为不允许与规范中的LegacyOctalEscapeSequence匹配的序列并导致语法错误。所以举个例子// Failslet str = String.raw`c:\foo\12\bar`;

...失败,因为\12看起来像遗留的八进制文字。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_28938701/article/details/114029945

智能推荐

Eclipse 插件精选介绍 -程序员宅基地

文章浏览阅读91次。Eclipse插件之EasyExplorer http://dev2dev.bea.com.cn/bbsdoc/20060124184.html 能够在 Eclipse 里面打开资源管理器来浏览当前选中的文件.可以在选项里面输入命令:explorer.exe /n,/e,{0}来打开一个显示树和文件夹内容的浏览窗口. 通过对以上explorer.exe的参数分析,我们可能会有个希..._eclipse插件介绍

牛客真题(35)-青草游戏_给出m个草的点燃位置,在第c秒点燃,最后有几种食物烤熟-程序员宅基地

文章浏览阅读155次。今天继续刷牛客真题,青草游戏分析:找规律,通过规律,判断游戏的输赢。问题:1、Python中if else 的简写方式;方式C++代码:#include<iostream>using namespace std;int main(){ int n; cin>>n; int a[n]; for(int i=0;i<n;i..._给出m个草的点燃位置,在第c秒点燃,最后有几种食物烤熟

ASP.NET MVC Model验证(一)_asp.net viewmodel 验证-程序员宅基地

文章浏览阅读1.2k次。前面对于Model绑定部分作了大概的介绍,从这章开始就进入Model验证部分了,这个实际上是一个系列的Model的绑定往往都是伴随着验证的。也会在后面的篇幅中讲解MVC框架中Model验证的机制,以及一些Model验证的方式讲解,本章只是一个简单的示例篇幅,对于有基础的朋友可以直接跳过了(不能耽误大家时间)。_asp.net viewmodel 验证

内核驱动 (五)看门狗_ida_simple_get-程序员宅基地

文章浏览阅读1.6k次。尽管在linux系统中,对于S3C2440开发板来说,默认是已经配置了看门狗定时器,如:Device Drivers ---&gt; [*] Watchdog Timer Support ---&gt; [*] Disable watchdog shutdown on close (NEW) //如果选中, 用户一旦 open 看门狗..._ida_simple_get

iPhone/iOS图片相关(读取、保存、绘制、其它相关)_ios cglayergetcontext-程序员宅基地

文章浏览阅读3.2w次,点赞3次,收藏26次。一.读取图片1.从资源(resource)读取UIImage* image=[UIImage imageNamed:@"1.jpg"];2.从网络读取NSURL *url=[NSURL URLWithString:@"http://www.sinaimg.cn/qc/photo_auto/chezhan/2012/50/00/15/80046_950.jpg"];UIImag_ios cglayergetcontext

某城市电话号码由三部分组成,分别是:      地区码—— 空白或三位数字;      前缀—— 非‘0’或‘1’开头的三位数字;      后缀—— 4位数字。_某城市电话号码由三部分组成,分别是: 地区码:空白或3位数字; 前缀:非0或1开头的3-程序员宅基地

文章浏览阅读1.3w次,点赞6次,收藏42次。软件测试技术(第二版)题目:某城市电话号码由三部分组成,分别是:地区码——空白或三位数字;前缀——非‘0’或‘1’开头的三位数字;后缀—— 4位数字。假定被测程序能接受一切符合上述规定的电话号码, 拒绝所有不符合规定的电话号码。要求:(1)请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,给出测试用例表。(2)如果所生成的测试用例不够全面,请考虑用别的测试方法生成一些补充的测试用例。..._某城市电话号码由三部分组成,分别是: 地区码:空白或3位数字; 前缀:非0或1开头的3

随便推点

【抽象代数概念速查】magic square-幻方_magic square线性代数-程序员宅基地

文章浏览阅读240次。如果对角线和反对角线的数加和也都等于magic number_magic square线性代数

CGLIB原理及实现机制学习_cglib methoddelegate-程序员宅基地

文章浏览阅读330次。什么是CGLIBCGLIB(Code Generator Library)是一个强大的、高性能的代码生成库。其被广泛应用于AOP框架(Spring、dynaop)中,用以提供方法拦截操作。Hibernate作为一个比较受欢迎的ORM框架,同样使用CGLIB来代理单端(多对一和一对一)关联(延迟提取集合使用的另一种机制)。为什么使用CGLIBCGLIB代理主要通过对字节码的操作,为对象引入间接级别,以控制对象的访问。我们知道Java中有一个动态代理也是做这个事情的,那我们为什么不直接使用Java动态_cglib methoddelegate

感恩过去,憧憬未来 | 数图2023年成长回顾-程序员宅基地

文章浏览阅读349次,点赞5次,收藏7次。龙腾千里,不忘初心,展望2024年,我们将继续秉持以客户为中心的服务理念,进一步提升产品质量,加大技术创新力度,以满足市场的不断变化和客户的需求,致力于为合作客户企业达成降本增效的良好成果。我们坚信,在全体员工的共同努力下,我们将在新的一年里取得更加丰硕的成果,为公司的未来发展奠定更加坚实的基础,也为我们在零售业和服务领域的广阔前景描绘更加美好的蓝图。数图在2023年取得了丰硕的成果,不仅在合作企业、荣誉奖项、员工规模等方面有了显著提升,还在质量管理、技术创新等方面展现了卓越的实力。岁月不居,时节如流。

JSON详解_json(json(appendix)->0)-程序员宅基地

文章浏览阅读294次。JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记,在_json(json(appendix)->0)

numpy 找到矩阵中值为nan的元素 numpy.isnan_numpy找出矩阵中nan值-程序员宅基地

文章浏览阅读4.4k次。numpy.isnan(a,axis=None,keepdims=no value)官方文档Test element-wise for NaN and return result as a boolean array.示例import numpy as npa = np.array([[1, 2], [3, np.nan]])print(np.isnan(a))结果[[False False] [False True]]_numpy找出矩阵中nan值

如何防止用一用户同时登陆-程序员宅基地

文章浏览阅读63次。记录用户登陆信息[登陆时间,用户ID]每隔一段时间(如5秒怎么样?)检查存储的登陆信息。如果发现多个,则比较各个的登陆时间,如果自己用的登陆时间比其他的早,则提示并注销。实现:1.把所有登陆用户存在这个全局Application中(建议把这个Application放在基类,方便调用):protected IList<IList> LoginInfo..._如何保证一个账号不允许同时登录