PHP查找“;单词“;在字符串中


PHP finding "words" within a string

我需要将两个字符串列表相互比较,并输出包含搜索字符串的字符串。应该很容易,我就是想不通。

为了过度简化它,让我们使用数组。我正在使用SOAP访问API,并根据表中包含的我自己的列表运行它,但是。。。。让我们使用数组。这种比较是我遇到的问题。

点击listsearch.php上的提交按钮,它就会执行。

ARRAY Mylist : TED, DEAD, FIRST, LAST, PUPPY
ARRAY TheirList..<br> teddybearnoose, <br>hauntedhouse, <br>hehasdeparted, <br>deadmouse, <br>walkingdead, <br>thegratefuldead, <br>firstkiss, <br>thinkfirst,<br> firsttobelast,<br> firstmanonthemoon, <br>firstreattempted, <br>somecrap, <br>something, <br>notdisplayed, <br>50000otherwords,<br> miscjunk

输出为:

TEDdybearnoose<br>
haunTEDhouse<br>
hehasdeparTED<br>
DEADmouse<br>
walkingDEAD<br>
thegratefulDEAD<br>
FIRSTkiss<br>
thinkFIRST<br>
FIRSTtobeLAST <--- note<br>
FIRSTmanonthemoon<br>
FIRSTreattempTED <--- note<br>
<br>

仅在任何位置输出列表中包含字符串的字符串。CAPS只是为了让单词在你面前脱颖而出。不重要。

现在,第二部分?

相同的"TheirList",只是我在文本区域键入了一个关键字,并从下拉列表中选择是在开头还是在任何地方。

关键字搜索.php

在字符串的[starting/end/anywhere]处搜索:[TED]。

你会怎么做?

提前谢谢。这对你们大多数人来说应该是轻而易举的事。我很感激。我会尽快回答问题。

您可以使用strpos()来查找子字符串(docs)的位置。

它可以很容易地检查子字符串是出现在字符串的开头还是结尾:

// String contains substring
strpos($string, $substring) !== false;
// String starts with substring
strpos($string, $substring) === 0;
// String ends with substring
strpos($string, $substring) === strlen($string) - strlen($substring);