【问题标题】:How to check if a string starts with ' " ' (double quotes)? [duplicate]如何检查字符串是否以'“'(双引号)开头? [重复]
【发布时间】:2015-03-31 15:58:24
【问题描述】:

每次我写“我的编译器假设我正在尝试写一个字符串。相反,我希望我的方法告诉我传入的字符串是否以双引号“”开头 例如:

String n;
if(n==n.startsWith(" " " ));

没用

有什么建议吗??

【问题讨论】:

  • 定义:不起作用。
  • 您是否在startsWith 方法中尝试过'"'"\"" 而不是" " "?在字符串开头匹配双引号的实际正则表达式是^",但每种语言对正则表达式文字都有不同的表示法,最常见的是/^"/我猜
  • 哪种语言?用反斜杠 String n 转义双引号; if(n==n.startsWith(" \" " ));

标签: regex


【解决方案1】:

你必须在字符串中转义双引号! 如果你这样做:" " ",字符串以第二个引号结束。如果在 Java 中,你的代码应该是这样的:

String n;
if(n.startsWith("\""))
{
    // execute if true
}

由于你只匹配第一个字符,你不需要使用像正则表达式这样复杂的工具:

String n;
if (n.charAt(0)=="\"")
{
    // execute if true
}

但是。您应该确保字符串不为空。只是为了安全:

String n;
    if (n.getText()!=null 
        && !n.getText().isEmpty() 
        && n.charAt(0)=="\"")
    {
        // execute if true
    }

PS:空格是一个字符。

PSS:标记为重复。

【讨论】:

  • Java 说 == 不适用于字符串和字符
  • 它不适用于字符串.. 和任何复杂的对象。它也可能导致浮点类型出现问题。 char应该没问题。我认为;)
猜你喜欢
  • 2011-02-16
  • 1970-01-01
  • 2019-08-24
  • 2015-04-15
  • 2013-09-04
  • 1970-01-01
  • 2012-02-06
  • 2023-01-01
相关资源
最近更新 更多