String类型的对象在 用split()方法进行字符分割的时候常常会遇到用特殊字符进行分割的情况,看JDK知道split()实际上是用的正则实现的分割,当遇到一些用特殊 字符作为分割标志的时候,不使用特殊手段就会抛出java.util.regex.PatternSyntaxException异常,比如用java中 的运算符号,括号等等这个时候可以使用split("[*]") split("//+")来实现特殊字符作为分割标志,[]和//就是用来解决这些问题的,但是有个例外,那就是 / ,这个符号比较麻烦,比如你的字符串是 aaa/bbb,由于在java的字符串中/ 要用//表示所以aaa/bbb用String类型的对象存放就是“aaa//bbb”,而且由于分割的时候还要转义一次所以还要多两个//,所以分割的 时候就变成 split(" ")或split(" [ ]"),这才表示用一个/做分割标志。

语法:

将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

stringObj.split([separator,[limit]])参数

stringObj 必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。

separator 可选项。字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。

limit 可选项。该值用来限制返回数组中的元素个数。

split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解,separator不作为任何数组元素的部分返回。

案例:

如果在一个字符串中有多个分隔符,可以用"|"作为连字符,比如:"acount=? and uu =? orn=?",把三个都分隔出来,可以用String.split("and|or");

System.out.println("?".replaceAll("[?]","a"));

System.out.println("*".replaceAll("[*]","a"));

System.out.println(")".replaceAll("[)]","a"));

System.out.println("{".replaceAll("[{]","a"));

System.out.println("(".replaceAll("[(]","a"));

System.out.println("|".replaceAll("[|]","a"));

System.out.println("$".replaceAll("[$]","a"));

System.out.println("+".replaceAll("[+]","a"));

/*下面几种方式也可以替换  */

System.out.println("^^".replaceAll("//^","a"));

System.out.println("".replaceAll("","a"));

System.out.println("||".replaceAll("//|","a"));

System.out.println("$$".replaceAll("//$","a"));

System.out.println("[[".replaceAll("//[","a"));

System.out.println("++".replaceAll("//+","a")); 来源: http://blog.yoodb.com/yoodb/article/detail/151

java按特殊标志截取_java 字符串分割处理split及特殊符号相关推荐

  1. java对于 进行字符串分隔_Java字符串分割函数split中以·点分割的问题

    问题描述: // 把字符串"192.168.1.1"按照小圆点进行分割,分割成"192","168","1"," ...

  2. c语言将字符串按空格分割_如何在c++中实现字符串分割函数split详解

    前言 在学习c++中string相关基本用法的时候,发现了sstream的istringstream[1]可以将字符串类似于控制台的方式进行输入,而实质上这个行为等同于利用空格将一个字符串进行了分割, ...

  3. java string分割_java 字符串分割的三种方法(总结)

    最近在项目中遇到一个小问题,一个字符串分割成一个数组,类似String str="aaa,bbb,ccc"; 然后以","为分割符,将其分割成一个数组,用什么方 ...

  4. java根据一个 号截取_java截取最后一个号前的字符串

    java截取最后一个号前的字符串 [2021-01-31 02:35:59]  简介: php中文字符串截取乱码的解决办法:首先创建一个PHP示例文件:然后定义一个"utf_substr&q ...

  5. java字符串从后截取_java 字符串截取的几种方式(转)

    众所周知,java提供了很多字符串截取的方式.下面就来看看大致有几种. 1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的 ...

  6. java字符串切分_Java字符串分割(转)

    java.lang.String的split()方法, JDK 1.4 or later public String[] split(String regex,int limit) 示例代码 publ ...

  7. Java编程——subString,截取当前字符串的部分内容

    package day01; /*** String subString(int start,int end)* 截取当前字符串的部分内容* @author Administrator**/ publ ...

  8. Java字符串分割函数split

    Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项: 1.split 方法  将一个字符串分割为子字符串,然后将 ...

  9. java字符串分割方法.split()的详细用法

    先看看它在java包中的Java API是: java.lang.String 方法总结 (1)按指定普通字符分割: java代码如下:String string="123@456@789& ...

最新文章

  1. 算法 - php - 二叉树遍历
  2. openresty开发系列11--openresty的api入门
  3. 微信接口开发之高级篇系列【网页授权详细说明【提供测试账号使用】】
  4. 基于STM32的波形发生器
  5. 修改goods对ECshop的url路径进行优化
  6. 国内博客搬家工具大全
  7. 使用c++实现一个FTP客户端(一)
  8. Android实现校园新闻APP,基于android平台的校园新闻app的开发 大学毕业论文.doc
  9. 【IOI2000】 邮局
  10. 华中农业大学计算机学院院长,魏小梅-华中农业大学-信息学院
  11. 华为p40会不会有鸿蒙系统,华为p40是不是鸿蒙系统
  12. PS出现“不能完成命令,因为没有足够内存(RAM)”的解决方案
  13. 【云原生】设备入云之FStudio 2.0通讯操作经验
  14. 热电偶与热电阻的区别
  15. 能通过一张照片(2D)得到3D的模型吗?
  16. MacOS Catalina 10.15.5 解决 brew install svn 报错Error: You are using macOS 10.15. We do not provide…
  17. 【Python】输入整数m和n,输出n位长的m的二进制,若n超出实际长度,则左边填充0。
  18. 企业微信公众号自定义消息模板
  19. 非常励志的一篇文章,请慢慢细读,品读,从中找到你想要的答案
  20. Android TV中按键事件和焦点处理总结

热门文章

  1. java fseek_转到C中的二进制文件的某个点(使用fseek),然后从该位置读取(使用fread)...
  2. QIIME 2用户文档. 14数据评估和质控Evaluating and controlling(2019.7)
  3. excel中使用CORREL函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性
  4. pandas使用duplicated函数删除dataframe中重复列名称的数据列、默认保留重复数据列中的第一个数据列(removing duplicate columns in dataframe)
  5. pandas将dataframe日期数据列的日期转化为日期当月第一天(每月1号)的日期并生成新的数据列(Setting date to beginning of month in dataframe)
  6. ggplot2可视化水平箱图并使用fct_reorder排序数据、使用na.rm处理缺失值(reorder boxplot with fct_reorder)、按照箱图的中位数从小到大排序水平箱图
  7. R语言droplevels函数删除因子变量(factor)没有用到的级别(level)实战
  8. HBase眼高手低从Shell到IDEA编程、心路笔记、踩坑过程
  9. 标准差、协方差、相关性分别是什么?
  10. 纳米孔测序高错误区域恢复率高达99%,肖传乐/刘奕志/王建新等在Nature子刊发表新校正组装算法