String one = "This is a test";
String two = "This is a simple test";
我想检查两个代码是否包含一个代码中的所有字符,并忽略它有额外字符的事实。
在第一个字符串中的字符集上使用简单循环:
String s1 = "This is a test";
String s2 = "This is a simple test";
Set<Character> chars = new HashSet<Character>();
for(int i = 0; i < s1.length(); i++) {
chars.add(s1.charAt(i));
}
for (Iterator<Character> iterator = chars.iterator(); iterator.hasNext();) {
Character character = iterator.next();
if(!s2.contains(character.toString())) {
// break and mark as not contained
break;
}
}
如果要检查单词,则可以将空格周围的字符串拆分为单词列表:
String[] words1 = s1.split("\\s");
String[] words2 = s2.split("\\s");
List<String> wordList1 = Arrays.asList(words1);
List<String> wordList2 = Arrays.asList(words2);
System.out.println(wordList2.containsAll(wordList1));
static boolean stringContains(String longer, String shorter) {
int i = 0;
for (char c : shorter.toCharArray()) {
i = longer.indexOf(c, i) + 1;
if (i <= 0) { return false; }
}
return true;
}
最快的方法可能是将它们分解为HashSet
s,然后应用containsAll
public static Set<Character> stringToCharacterSet(String s) {
Set<Character> set = new HashSet<>();
for (char c : s.toCharArray()) {
set.add(c);
}
return set;
}
public static boolean containsAllChars
(String container, String containee) {
return stringToCharacterSet(container).containsAll
(stringToCharacterSet(containee));
}
public static void main(String[] args) {
String one = "This is a test";
String two = "This is a simple test";
System.out.println (containsAllChars(one, two));
}
问题内容: 在代码中检查的子字符串是: 但是我该如何在Swift中做到这一点? 问题答案: 您可以使用Swift进行完全相同的调用: Swift 4和Swift 5 在Swift 4中,String是值的集合,在Swift 2和3中并不是这样,因此您可以使用以下更简洁的代码1: 迅捷3.0+ 较早的斯威夫特 我希望这是一个有用的解决方案,因为包括我在内的某些人通过致电遇到了一些奇怪的问题。1个 P
在中,检查中的子字符串的代码是: 但我如何在Swift中做到这一点呢?
例如: 字符串1=helloworld字符串2=asdfuvjerhelloworld 这应该是真的。 另一个例子:字符串1=helloworld字符串2=lshewodxzr 这也应该是真的。 所以我正在研究如何创建一个方法,它将返回一个布尔值,检查第二个字符串是否包含第一个字符串中的字母。在第二个示例中,string2只有一次字母l,尽管字母l在string1中出现了三次,但仍然返回true。
问题内容: 我有一个清单: 并要搜索包含字符串的项目。我怎样才能做到这一点? 会检查是否’abc’存在在列表中,但它的一部分和对自己不存在。那么,如何获得包含的所有物品? 问题答案: 如果你只想检查列表中是否存在任何字符串,则可以尝试 如果你确实要获取包含的所有项目abc,请使用
问题内容: 仅使用一个参数作为要检查的子字符串,如何检查多个子字符串而不重复使用? 例如。 问题答案: 您可以使用可用于多个子字符串的函数编写自己的实用程序函数。 以下是在完全/部分匹配以及匹配总数的情况下返回布尔值(/ )的示例: 输出: 这是实时示例:https : //play.golang.org/p/Xka0KfBrRD
问题内容: 如何检查数组中的任何字符串是否在另一个字符串中? 喜欢: 该代码行不通,只是为了展示我想要实现的目标。 问题答案: 你可以使用: 同样,要检查是否找到了列表中的所有字符串,请使用all代替any。