Java 8 String LIKE 功能实现:使用 matches、contains、startsWith 和 endsWith
在 Java 8 中,可以使用String类的matches方法来实现类似于 SQL 中的LIKE功能。\n\nmatches方法接受一个正则表达式作为参数,返回一个布尔值,表示字符串是否匹配该正则表达式。\n\n下面是一个示例:\n\njava\nString str = "Hello World";\n\n// 检查字符串是否包含 "Hello"\nboolean isMatch = str.matches(".*Hello.*");\nSystem.out.println(isMatch); // 输出:true\n\n// 检查字符串是否以 "Hello" 开头\nisMatch = str.matches("Hello.*");\nSystem.out.println(isMatch); // 输出:true\n\n// 检查字符串是否以 "World" 结尾\nisMatch = str.matches(".*World");\nSystem.out.println(isMatch); // 输出:true\n\n// 检查字符串是否以 "Hello" 开头并且以 "World" 结尾\nisMatch = str.matches("Hello.*World");\nSystem.out.println(isMatch); // 输出:false\n\n\n在上面的示例中,我们使用了.表示任意字符,*表示前面的字符可以重复0次或多次。因此,.*表示任意字符可以重复0次或多次。这样,我们可以使用.*来实现类似于 SQL 中的%通配符功能。\n\n另外,Java 8 还引入了String类的contains方法和startsWith方法,可以更简单地实现类似于LIKE功能的匹配。下面是一个示例:\n\njava\nString str = "Hello World";\n\n// 检查字符串是否包含 "Hello"\nboolean contains = str.contains("Hello");\nSystem.out.println(contains); // 输出:true\n\n// 检查字符串是否以 "Hello" 开头\nboolean startsWith = str.startsWith("Hello");\nSystem.out.println(startsWith); // 输出:true\n\n// 检查字符串是否以 "World" 结尾\nboolean endsWith = str.endsWith("World");\nSystem.out.println(endsWith); // 输出:true\n\n\ncontains方法返回一个布尔值,表示字符串是否包含指定的子字符串。\n\nstartsWith方法返回一个布尔值,表示字符串是否以指定的子字符串开头。\n\nendsWith方法返回一个布尔值,表示字符串是否以指定的子字符串结尾。\n\n这些方法更加直观和易于理解,也是实现类似于LIKE功能的常用方法。
原文地址: https://www.cveoy.top/t/topic/pZnP 著作权归作者所有。请勿转载和采集!