【问题标题】:Check if string does contain text C#检查字符串是否包含文本 C#
【发布时间】:2020-04-15 09:02:09
【问题描述】:

我想找到一种方法来检查一个字符串是否包含文本,如果它包含文本,它将转到下一个并继续这样做,直到它找到一个空字符串或到达末尾。

问题是我找不到任何可以用来检查字符串是否包含任何文本的东西,我只能找到它是 IsNullOrWhiteSpace 还是包含特定文本。

【问题讨论】:

  • 所以它不必包含特定的文本,只是不能为空?
  • 那么,为什么不能使用IsNullOrWhiteSpace
  • 到目前为止您尝试过什么?你的代码是什么?您是否尝试过 IsNullOrWhiteSpace 或正则表达式?请查看How to ask a good question 和/或How to create minimal reproducible example
  • 我还没有尝试过任何东西,但我找不到任何可以满足我需求的功能。最好的例子是想想日记,你想预约。因此,在预订该约会时,它将遍历每个日期,直到找到一个空缺的位置。因此,如果它确实包含文本,它将跳到第二天然后下一个,直到它找到一个不包含文本的字符串。
  • 如果字符串包含 any 文本,则它不是“null 或空格” - 您可以使用 !(非)运算符反转测试

标签: c# string text contains


【解决方案1】:

字符串何时包含文本?那么当字符串存在并且它不包含空文本时。字符串何时包含空文本?当字符串长度为0时。

所以,回答你的问题,当一个文本存在并且s.Length != 0

if (s != null && s.Length > 0) { /*s is not empty*/ }

或者更好

if (s?.Length > 0) { /*s is not empty*/ }

或者,如果您希望字符串包含不不存在或为空的文本:

if (!string.IsNullOrEmpty(s)) { /*s is not empty*/ }

现在如果只包含空格的文本也必须被认为是空的,那么什么时候文本不是空的?当文本不是不存在或空格时,即IsNullOrWhiteSpacefalse

if (!string.IsNullOrWhiteSpace(s)) { /*s is not empty*/ }

【讨论】:

  • if (!string.IsNullOrEmpty(s)) { /*s is not empty*/ } 这正是我需要的,非常感谢! :)
猜你喜欢
  • 2021-12-20
  • 1970-01-01
  • 2018-10-03
  • 2016-03-26
  • 2015-02-07
  • 2011-01-21
  • 2012-01-14
  • 1970-01-01
  • 2013-05-03
相关资源
最近更新 更多