正则表达式“ (?<!\\ d) digit (?!\\ d) ”与指定的数字匹配。
replaceAll()方法接受两个字符串:正则表达式模式和替换字符串,并将模式替换为指定的字符串。
因此,要删除字符串中除1和2以外的所有数字,分别用一个和两个分别替换正则表达式1和2,并用一个空字符串替换所有其他数字。
import java.util.Scanner; public class RegexExample { public static void main(String args[]) { //Reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in); String input = sc.nextLine(); //Regular expression to match the digit 1 String regex1 = "(?<!\\d)1(?!\\d)"; //Regular expression to match the digit 2 String regex2 = "(?<!\\d)2(?!\\d)"; //Replacing all space characters with single space String result = input.replaceAll(regex1, "one") .replaceAll(regex2, "two") .replaceAll("\\s*\\d+", ""); System.out.print("Result: "+result); } }
输出结果
Enter a String sample 1 2 3 4 5 6 Result: sample one two
问题内容: 我需要将类似于“¼杯糖”的字符串修改为“杯糖”,这意味着将所有分数符号替换为“”。 我已经提到了这篇文章,并设法使用以下代码删除了¼: 但是如何替换所有可能的分数符号呢? 问题答案: 类似于和属于Unicode类别的分数符号。如果可以消除该组中的所有676个字符,可以使用以下正则表达式: 如果没有,您可以始终明确列出它们:
问题内容: 我需要从Java中的字符串中删除字符“¼”和“ 1/2”。我怎样才能做到这一点? 我无法控制请求,我必须接受输入内容。基本上,请求字符串具有字符“¼”和“ 1/2”,我需要将它们替换为空字符串。 我尝试将其放在列表中,但不起作用: invalidChars.add(’½’); 然后搜索这个。Jenkins抱怨:无法映射字符,无法编码UTF-8 [INFO] 2错误 问题答案: 从技术上
问题内容: 我有两个弦 和。现在,我想对这些字符串应用一个正则表达式,以过滤掉除数字以外的所有内容,以便获得像和这样的整数。 我该怎么做? 问题答案: 您可以使用。它会考虑您所拥有的一切之外的一切。 因此,如果要过滤除y以外的所有内容。在你的情况下,你会做类似的事情 其中string是保存实际文本的变量!
问题内容: 尝试删除所有非0-9的字母和字符和一个句点。我正在使用,但它也会删除小数,如何也保留小数? 问题答案: 试试这个代码: 现在将包含。
我试图找出从字符串中删除所有标点符号和空格的正确方法,但保留撇号不变,例如: 不会留下来,但“欲望”会变成“欲望”。 我试过使用
我尝试了按键事件,但似乎不起作用? 我不能使用,因为应用程序使用IE9和不支持这些新HTML5标准的旧浏览器。我知道IE很烂