Javascript 在java脚本中检查字符串中的子字符串

Javascript 在java脚本中检查字符串中的子字符串,javascript,string,Javascript,String,我想检查字符串java脚本中特定字符的出现情况, 以下是我需要的 如果字符串之间只有一个点(.),我必须提醒它是一个对象例如:var text='ABC.DEF' 如果字符串的最末端有打开和关闭括号() 对于字符串,我必须提醒它是一个函数,例如:var text='ABC() 我试过这个 if(text .indexOf('()') === -1) { alert("not function"); } 但是如何检查括号是否在最末端。返回字符串在另一个字符串中的位置。如果未找到,它将返

我想检查字符串java脚本中特定字符的出现情况,
以下是我需要的

  • 如果字符串之间只有一个点(.),我必须提醒
    它是一个对象

    例如:
    var text='ABC.DEF'
  • 如果字符串的最末端有打开和关闭括号
    ()
    对于字符串,我必须提醒它是一个函数,例如:
    var text='ABC()
我试过这个

if(text .indexOf('()') === -1)
{
  alert("not function");
} 
但是如何检查括号是否在最末端。

返回字符串在另一个字符串中的位置。如果未找到,它将返回-1:

var s = "foo";
alert(s.indexOf("oo") != -1);
返回字符串在另一个字符串中的位置。如果未找到,它将返回-1:

var s = "foo";
alert(s.indexOf("oo") != -1);
您可以使用正则表达式:

var one = "ABC.DEF";
var two = "ABC()";
var three = "()blank";

function check(string){

  // Matches: ABC.DEF  and Does not match: ABC. or .DEF
  if(/\w+\.\w+/.test(string)) 
    console.log("it is a function");

  // \(\) interpreted as (). Matches : ABC() ; Does not match: ()ABC or ABC()ABC
  else if(/\w+\(\)$/.test(string)) 
    console.log("it's an object");

  // Not found
  else
    console.log("something else")

}

check(one);    // it is a function
check(two);    // it's an object
check(three);  // something else
$
检查匹配项(
()
)是否在行尾。
\w+
统计一次或多次出现的“A-Za-z0-9”

您可以使用正则表达式:

var one = "ABC.DEF";
var two = "ABC()";
var three = "()blank";

function check(string){

  // Matches: ABC.DEF  and Does not match: ABC. or .DEF
  if(/\w+\.\w+/.test(string)) 
    console.log("it is a function");

  // \(\) interpreted as (). Matches : ABC() ; Does not match: ()ABC or ABC()ABC
  else if(/\w+\(\)$/.test(string)) 
    console.log("it's an object");

  // Not found
  else
    console.log("something else")

}

check(one);    // it is a function
check(two);    // it's an object
check(three);  // something else
$
检查匹配项(
()
)是否在行尾。
\w+
统计一次或多次出现的“A-Za-z0-9”

试试这个:

  if(text.substring(2) == "()")
  {
    alert("it is function");
  } 
试试这个:

  if(text.substring(2) == "()")
  {
    alert("it is function");
  } 
试一试

试一试

允许您使用负数处理字符串的另一端

所以

允许您使用负数处理字符串的另一端

所以


正则表达式
^\w+\.\w+$
将匹配由以下内容组成的字符串:

  • 字符串的开头
  • 一系列“单词”字符
  • 然后是句号
  • 然后是另一个“单词”字符序列;及
  • 最后,字符串的结尾
类似地,正则表达式
^\w+\(\)$
将匹配以下字符串:

  • 字符串的开头
  • 一系列“单词”字符
  • 然后是开放式和封闭式圆括号;及
  • 最后,字符串的结尾
您可以将其包装在如下函数中:

function check( text_to_match ){
    if(text_to_match.match(/^\w+\.\w+/)) 
        console.log("it is an object ");
    else if(text_to_match.match(/^\w+\(\)$/)) 
        console.log("it is an function");
}

正则表达式
^\w+\.\w+$
将匹配由以下内容组成的字符串:

  • 字符串的开头
  • 一系列“单词”字符
  • 然后是句号
  • 然后是另一个“单词”字符序列;及
  • 最后,字符串的结尾
类似地,正则表达式
^\w+\(\)$
将匹配以下字符串:

  • 字符串的开头
  • 一系列“单词”字符
  • 然后是开放式和封闭式圆括号;及
  • 最后,字符串的结尾
您可以将其包装在如下函数中:

function check( text_to_match ){
    if(text_to_match.match(/^\w+\.\w+/)) 
        console.log("it is an object ");
    else if(text_to_match.match(/^\w+\(\)$/)) 
        console.log("it is an function");
}

这只是JavaScript,不是jQuery。如果我有
foo.bar()
,会怎么样?或者
foo.position().top
?@JosephDreamer如何?一些演示??让我再重复一遍:如果字符串既有
又有
()
,该怎么办?它属于哪里?那只是JavaScript,不是jQuery。如果我有
foo.bar()
?或者
foo.position().top
?@JosephDreamer如何?一些演示??让我再重复一遍:如果字符串既有
又有
()
,该怎么办?它属于哪里?我想知道该字符是否位于字符串的最末尾,或者是否返回子字符串的位置。例如,只需检查“(“return s.length-1;”)我想知道该字符是否位于字符串的最末尾,或者是否返回子字符串的位置。例如,只需检查“(“返回s.length-1;)