c# - 我如何检查某物是否包含 XY,但它也可能是 XZY?
问题描述
这是代码
Console.WriteLine("Hello!");
string greeting = Console.ReadLine();
if (greeting.ToLower().Contains("hello how are you")) ;
{
Console.WriteLine("I am good");
}
这段代码有问题,如果用户说类似Hello jfjf how fjjffj are you
程序仍然会回复他。我需要的是greeting
必须是Hello
,然后是 X 数量的任何字符串(每个字符串将由空格分隔)how are you
,所以类似的东西Hello thomas anderson how are you
可以工作,但类似的东西Hello 8grrgh how jrjr are me you
不起作用
解决方案
我想你需要一个正则表达式:
var r = new Regex("Hello .* how are you");
if(r.IsMatch(myString))
{
Console.WriteLine("I am good");
}
这将匹配"Hello thomas anderson how are you"
但不匹配"Hello jfjf how fjjffj are you"
。
推荐阅读
- vscode-settings - 雨果如何将静态目录复制到`public/static`而不是`public`?
- testing - Test Cafè 有没有办法使用 react-DropZone 选择和上传文件?
- python - PythonInfo 没有 virtualenv 实现
- javascript - “无法读取未定义的属性‘selectedZones’”已初始化且非空变量
- macos - 为什么 `write()` 是通过 `call` 指令而不是中断来执行的?
- html - 如何将详细信息添加到工具提示而不是标题
- python - 如何在 python 中为 Twitter 的搜索 API 形成搜索查询?
- python-3.x - 条件语句(For、If、Elif 和 else)
- arrays - 为什么我得到 NaN 而不是变量?
- javascript - 如何使用'use strict'删除javascript let变量?