有意思的正则表达:Java按位数(指定长度)切割字符串

一 正则表达

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

二 应用

2.1 按指定长度截取字符串
比如 111222333aaa
我们按照三位一截取

input = input.replaceAll("[\\s|,]*", ""); //把空格或逗号去掉
String newInput = input.replaceAll("(.{3})", "$1,");
// 点. 表示任意内容 数字,字母,汉字都可以 三位一取,并且取第一个截取,设置成截取内容+,  
List<String> inputList = Arrays.asList(newInput.split(",")); //根据逗号切开

对于这些表达肯定比较蒙,这样我们找一个 在线正则 工具,
然后输入自己试一试
文本是:

123456qwerty
在这里插入图片描述
正则表达式就是无论什么内容 两位一取
替换文本就是取第一个换成 两个内容+“,” ,可以看下输出

我们再来看看正则表达式 $1 $2 $3是怎么回事

我们可以想怎么截取就怎么截取,这样的话就是先2位一截取,再是一位一截取,然后$2就是对第二部分 那个一位一截取的部分替换成 内容+逗号
在这里插入图片描述
自己找个正则在线转换工具玩玩把

今天的彩蛋-- 等你一年 到9.9

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java中,我们可以使用正则表达式来判断一个字符串中是否包含多个指定字符串。以下是一种实现方法: 1. 首先,我们需要使用String类的`matches()`方法来检查整个字符串是否匹配指定正则表达式。 2. 使用正则表达式的"|"(管道符)来指定多个字符串的匹配条件,一个字符集合可以用中括号括起来(例如:[abc] 匹配字符 a、b 或 c)。 3. 使用反斜杠(\)来转义特殊字符。 以下是一个示例代码: ```java public static boolean containsMultipleString(String input, String[] strings) { String regex = ""; // 将多个字符串拼接为一个正则表达式 for (String str : strings) { regex += str + "|"; } // 去除最后一个多余的管道符 regex = regex.substring(0, regex.length() - 1); // 使用正则表达式检查输入是否匹配 return input.matches(".*(" + regex + ").*"); } public static void main(String[] args) { String input = "Hello, World!"; String[] strings = {"Hello", "World"}; if (containsMultipleString(input, strings)) { System.out.println("输入字符串包含多个指定字符串"); } else { System.out.println("输入字符串不包含多个指定字符串"); } } ``` 以上代码将会输出:"输入字符串包含多个指定字符串",因为输入字符串"Hello, World!"同时包含"Hello"和"World"这两个指定字符串。 这就是一种使用Java正则表达式来判断一个字符串中是否包含多个指定字符串的方法。希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值