从键盘输入两个字符串。第一个字符串命名为m_str,第二个字符串命名为f_str。在f_str的中间(非首字符、非末字符)包含一个‘*’,该字符常作为通配符,即代表一个或多个字符。现请编写程序,查找m_str中是否包含f_str,若包含则输出找到的所有子串。
时间: 2023-05-29 10:07:49 浏览: 56
示例输入:
m_str:HelloWorldHello
f_str:Wo*d
示例输出:
Found string: World
Found string: Worlde
Found string: WorldH
Found string: WorldHe
Found string: WorldHel
Found string: WorldHell
相关问题
java从键盘输入两个字符串,判断第二个字符串是否包含第一个字符串,使用str1.indexCf(str2)
在Java中,可以通过`indexOf()`方法来判断一个字符串是否包含另一个字符串。`indexOf()`方法在找不到指定的子字符串时会返回`-1`,如果找到了则返回第一个匹配的子字符串的起始索引。因此,如果你想检查第二个字符串是否包含第一个字符串,你可以调用第二个字符串的`indexOf()`方法,并将第一个字符串作为参数传递。
下面是一个简单的代码示例,演示如何使用`indexOf()`方法来实现这个功能:
```java
import java.util.Scanner;
public class StringContainsExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个字符串:");
String str1 = scanner.nextLine();
System.out.println("请输入第二个字符串:");
String str2 = scanner.nextLine();
// 使用indexOf()方法判断str2是否包含str1
int index = str2.indexOf(str1);
if (index != -1) {
System.out.println("第二个字符串包含第一个字符串。位置:" + index);
} else {
System.out.println("第二个字符串不包含第一个字符串。");
}
scanner.close();
}
}
```
在这个示例中,程序首先提示用户输入两个字符串,然后使用`indexOf()`方法来查找第一个字符串在第二个字符串中的位置。如果`indexOf()`返回的不是`-1`,则表示第一个字符串是第二个字符串的子串。
从键盘中输入两个字符串,判断第二个字符串是否包含第一个字符串
当你想在编程中实现这个功能时,可以使用循环遍历和条件检查的方式。例如,在Python中,你可以这样做:
```python
def contains_substring(main_str, sub_str):
# 使用len(sub_str) + 1作为索引范围,因为如果main_str以sub_str结尾也不算匹配
for i in range(len(main_str) - len(sub_str) + 1):
# 检查main_str的每个片段是否等于sub_str
if main_str[i:i+len(sub_str)] == sub_str:
return True
return False
# 示例
input_string_1 = input("请输入第一个字符串: ")
input_string_2 = input("请输入第二个字符串: ")
if contains_substring(input_string_1, input_string_2):
print(f"第二个字符串 '{input_string_2}' 包含第一个字符串 '{input_string_1}'")
else:
print(f"第二个字符串 '{input_string_2}' 不包含第一个字符串 '{input_string_1}'")