java忽略引号中的分隔符_java – 令牌化但忽略引号内的分隔符
在这种情况下,使用
java.util.regex.Matcher更容易使用find()而不是任何类型的拆分.
也就是说,不必定义令牌之间的分隔符的模式,您可以为令牌本身定义模式.
以下是一个例子:
String text = "1 2 \"333 4\" 55 6 \"77\" 8 999";
// 1 2 "333 4" 55 6 "77" 8 999
String regex = "\"([^\"]*)\"|(\\S+)";
Matcher m = Pattern.compile(regex).matcher(text);
while (m.find()) {
if (m.group(1) != null) {
System.out.println("Quoted [" + m.group(1) + "]");
} else {
System.out.println("Plain [" + m.group(2) + "]");
}
}
Plain [1]
Plain [2]
Quoted [333 4]
Plain [55]
Plain [6]
Quoted [77]
Plain [8]
Plain [999]
模式本质上是:
"([^"]*)"|(\S+)
\_____/ \___/
1 2
有两个替代:
>第一个交替匹配开头双引号,除了双引号(在组1中捕获)之外的任何序列,然后关闭双引号
>第二个替换匹配组2中捕获的任何非空白字符序列
交替的顺序在这种模式中是重要的
请注意,这不会在引用的段中处理转义的双引号.如果您需要这样做,那么该模式变得更加复杂,但是Matcher解决方案仍然可行.
参考
也可以看看
附录
相关问题
java忽略引号中的分隔符_java – 令牌化但忽略引号内的分隔符相关推荐
- java清空inputstream中的流_Java 流处理
数据流 1.I/O流概述 大部分程序都需要输入/输出处理,比如从键盘读取数据.向屏幕中输出数据.从文件中读或者向文件中写数据.在一个网络连接上进行读写操作等.在Java中,把这些不同类型的输入.输出源 ...
- java删除数组中指定元素_java学习中如何删除数组中的指定元素
java的api中,并没有提供删除数组中元素的方法.虽然数组是一个对象,不过并没有提供add()remove()或查找元素的方法.这就是为什么类似ArrayList和HashSet受欢迎的原因. 不过 ...
- java 去掉字符串中的换行_java删除字符串中的空格、回车、换行符、制表符程序...
本程序来详细的介绍关于java删除字符串中的空格.回车.换行符.制表符程序实例,有需要学习的朋友可参考参考. java换行符 那是因为默认的情况下,界面上的换行时用的"n",这是L ...
- magento 模块化开发_Magento中的PayPal信用卡令牌化
magento 模块化开发 As a robust eCommerce platform, Magento has long supported integration with a variety ...
- JAVA设置流中当前位置_java文件流的问题!急
朋友你好,用使用 javadoc 标记可以做到.具体说明如下:: javadoc 标记是插入文档注释中的特殊标记,它们用于标识代码中的特殊引用.javadoc 标记由"@"及其后所 ...
- java判断栈中元素数目_Java数据结构与算法-栈和队列
(摘录加总结)------ 栈和队列不属于基础的数据结构,它们都属于线性表. 一.栈 对于栈存储操作元素只能在栈结构的一端进行元素的插入和删除,是一种性质上的线性表结构.按照"先进后出&qu ...
- java取list中最大数值_Java后台通过Collections获取list集合中最大数,最小数代码
我就废话不多说了,大家还是直接看代码吧~ package com.jalor; import java.util.ArrayList; import java.util.Collections; im ...
- java提取word中的文字_Java 提取Word中的文本和图片
本文将介绍通过Java来提取或读取Word文档中文本和图片的方法.这里提取文本和图片包括同时提取文档正文当中以及页眉.页脚中的的文本和图片. 使用工具:Free Spire.Doc for Java ...
- java在容器中导入图片_Java程序员必学技术:@Import直接导入类,在容器@Configuration、@Component中是怎么直接导入类注册到容器的?...
Java程序员必学技术:@Import直接导入类,在容器@Configuration.@Component中是怎么直接导入类注册到容器的? Spring IoC 容器是一个管理 Bean 的容器,在 ...
最新文章
- 切换apache的prefork和worker模式
- jQuery笔记总结篇
- view 注册服务器,view服务器ip地址
- Sublime text无法自动通过package control安装插件的研究
- Dynamics CRM 2015 站点地图公告配置实体显示名称的变更
- 后勤管理系统_高校后勤设备报修管理系统_易报修系统高校后勤管理系统_免费高校后勤管理系统...
- centos mysql php tomcat_CentOS 6.x使用yum快速安装Apache+PHP+Tomcat(JSP)+MySQL
- 重装 Windows 7 系统后电脑出现乱码怎么办
- Android AsyncTasks并行执行
- Atitit 遗留系统的改造 微创技术 attilax总结 目录 1. 微创是高科技带来的革命!	1 1.1. 早期微创	1 1.2. 微创五大优点	1 2. 常用辅助设备与模块	2 2.1. 清晰
- 你写的api接口代码真是_百度AI接口之JavaAPI方式调用示例代码[持续完善中]
- Python学习之——列表、字典、实验低配版非诚勿扰
- 索引格式的图片在PS软件中无法操作,怎么解决?
- 虚拟机怎么装服务器系统教程视频,云服务器装虚拟机教程视频
- java 红外光谱数据库_【分享】免费的20个谱图数据库 - 晶体 - 小木虫 - 学术 科研 互动社区...
- 形态学操作之腐蚀、膨胀、开运算、闭运算、梯度运算、顶帽和黑帽
- 启动车子温车_冷车和热车难打火可以不修,但温车不打火必须得修
- 将标签转为onehot编码
- 折腾一下,Linux Mint 19 下工作
- shell -- expr命令