我知道我可以使用带有通配符的通配符;Google表格脚本通配符
=COUNTIF(A:A ; "*text*")
我想运行我的代码,如果A1包含“文本”。
A1 =“test text”
任何人都可以帮助我吗?
我知道我可以使用带有通配符的通配符;Google表格脚本通配符
=COUNTIF(A:A ; "*text*")
我想运行我的代码,如果A1包含“文本”。
A1 =“test text”
任何人都可以帮助我吗?
我的解决办法:
if(test.indexOf("2,")>-1)
{
my code goes here
}
=IF(COUNTIF(A1, "*text*"), "your code here", "Code not run: A1 doesn't contain 'text'")
这是你在想什么 - 公式代码?或者你想用Google Apps Script?
(有可能是一个比COUNTIF()这个更直观地命名的功能,但它的伎俩。)
对于谷歌Apps脚本,您可以使用正则表达式。
/.*text.*/
注意通配符使用稍有不同的正则表达式:你需要你的星号*
之前,包括点.
向前环绕的任何声明,如果你的应用程序脚本硬编码斜杠被解释为一个正则表达式: COUNTIF()
:*text*
正则表达式:/.*text.*/
因此,一个快速脚本会看升IKE在此:
function matchText(text){
try {
var pattern = /.*text.*/;
var isMatch = text.match(pattern)[0];
return isMatch
} catch (e) {
return e.toString();
}
};
广义自定义函数:
function matchText(text,pattern){
try {
var isMatch = text.match(pattern)[0];
return isMatch
} catch (e) {
return e.toString();
}
};
您仍然可以做到这一点,使用REGEXEXTRACT或REGEXMATCH,这始终是我最喜欢的本地公式。请记住在星号前使用正确的正则表达式通配符表示法:这些点:.*
。或者只是使用text
本身,它会自动将找到它的任何实例:
(术语nitpick:“如果你在应用程序脚本中对它进行硬编码,将正斜杠包围的任何***语句***解释为正则表达式:'/ * text * /'”↦我认为你的意思是***表达式***。(表达式构成声明的一部分。)) –
我想使用谷歌Apps脚本。 – NoTolerance