java中string中转义_如何在String.Format中转义%?
我将SQL查询存储在我的strings.xml文件中,并且我想使用String.Format在代码中构建最终的字符串。 SELECT语句使用like,如下所示:
SELECT Field1, Field2 FROM mytable WHERE Field1 LIKE '%something%'
为了格式化,我将“ something”替换为%1 $ s,因此它变为:
SELECT Field1, Field2 FROM mytable WHERE Field1 LIKE \'%%1$s%\'
我用反斜杠转义了单引号。 但是,我无法逃脱%符号。
如何在我的strings.xml文件中包含一个like语句?
#1楼
为了补充先前说明的解决方案,请使用:
str = str.replace("%", "%%");
#2楼
这是更强大的正则表达式替换,不会替换输入中已加倍的%%。
str = str.replaceAll("(?:[^%]|\\A)%(?:[^%]|\\z)", "%%");
#3楼
我不敢相信现在这不是一个简单的解决问题,但是,嘿,这是我要解决的问题
(?:[^%]|^)(?:(%%)+|)(%)(?:[^%])
要在将消息传递给String.format之前对其进行清理,可以使用以下命令
Pattern p = Pattern.compile("(?:[^%]|^)(?:(%%)+|)(%)(?:[^%])");
Matcher m1 = p.matcher(log);
StringBuffer buf = new StringBuffer();
while (m1.find())
m1.appendReplacement(buf, log.substring(m1.start(), m1.start(2)) + "%%" + log.substring(m1.end(2), m1.end()));
// Return the sanitised message
String escapedString = m1.appendTail(buf).toString();
请注意,这可用于任意数量的格式字符,因此它将%替换为%%,%%%替换为%%%%,%%%%%替换为%%%%%%等。
它将留下任何已经转义的字符(例如,%%,%%%%等)
#4楼
要逃脱% ,您需要将其加倍: %% 。
java中string中转义_如何在String.Format中转义%?相关推荐
- 怎样在表格中选出同一类_如何在excel表格中同一个框选择下一行 - 卡饭网
在excel表格中怎样设置选择下拉列表? 在excel表格中怎样设置选择下拉列表? 在excel表格制作中,经常会遇到固定选项输入,例如性别( 男 女),婚否(是, 否),在制作考勤表的时候也可以利 ...
- java pdf添加透明水印_如何在PDF文件中添加透明水印
原标题:如何在PDF文件中添加透明水印 有些文件添加水印,但是又不想水印影响文件的使用有时候会设置透明水印,那么PDF怎么设置透明水印呢,应该有很多的小伙伴们都很好奇应该怎么做吧,接下来就为大家分享一 ...
- 如何提取edit control中输入的数据_如何在Power Query中提取数据——列表篇(1)
表名为列表,第一步骤名称为源 (一)从头开始提取 1. 获取列表第一个 List.First(list as list, optionaldefaultValue as any)as any 返回列表 ...
- 如何在代码中让按钮高亮_如何在C代码中插入移位寄存器
上期内容:AI Engine到底是什么? 众所周知,标准C或C++代码是没有HDL代码的并行性和时序性的,那么如何在C代码中插入寄存器呢?Vivado HLS提供了IP库,这些IP库使得HLS可直接从 ...
- ux设计中的各种地图_如何在UX设计中使用颜色
ux设计中的各种地图 Color is the mother tongue of the subconscious. 颜色是潜意识的母语. - Carl Jung -荣格 Color has more ...
- excel中 复制工作表_如何在Excel 2013中轻松移动或复制工作表
excel中 复制工作表 There may be times when you want to create a new Excel worksheet based on an existing w ...
- java eclipse导入工程文件_如何在Eclipse软件中导入Java工程文件
有些在学习Java编程的用户虽然会创建工程,但是对于怎么导入工程文件却不清楚,下面这篇教程我们就来为大家介绍一下,在Eclipse软件中导入Java工程文件的方法,有兴趣的朋友就来了解一下吧. 解决方 ...
- java生成xml 换行符_如何在XML文件中添加换行符(换行符)?
甲换行符(又名行中断或结束时的线,EOL)是标记文本行的末尾特殊字符或字符序列.所使用的确切代码因操作系统而异:LF: Unix CR: Mac OS up to version 9 CR ...
- scala中map添加值_如何在Scala Map中反转键和值
scala中map添加值 A Map is a data structure that stores data as key: value pair. 映射是一种将数据存储为键:值对的数据结构. Sy ...
最新文章
- 最新NLP架构的直观解释:多任务学习– ERNIE 2.0(附链接)| CSDN博文精选
- unix mysql命令大全_mySql的一些常用命令
- js优化阿里云图片加载(一)
- Panda处理文本和时序数据?首选向量化
- listview刷新_Flutter NestedScrollView 滑动折叠头部下拉刷新效果
- Linux 下多核CPU知识
- vim内过长字符串导致的语法加亮错误
- 微信公众号介绍_以及注册订阅号---微信公众号开发工作笔记0001
- 前端跨域问题(CORS)
- mysql清除旧版本_MYSQL使用INNODB时及时清理旧版本数据
- 服务器2003系统U盘安装方法,u启动windows2003PE工具箱
- date日期格式化 java,Java日期格式化常用方法
- Github上如何找开源代码
- matlab定义对角块矩阵,Matlab中的扩展块对角矩阵
- 移动硬盘未知usb设备(设定地址失败)
- 使用SPACEDESK时iPad显示Connected-Display OFF解决方法
- 直播预告 | 华南理工实验室专场二
- access字段相加_access如何对一行的几列求和
- 华为鸿蒙系统小窗口,mate30pro升鸿蒙后小窗应用调不出来
- BurpSuite实战七之使用Burp Scanner