You can use regular expressions to achieve this. Here's an example:
$string = "This is a test string. It contains multiple test cases, but some are excluded like test123 or testabc.";
$count = preg_match_all("/\btest\b(?!(123|abc))/i", $string, $matches);
echo "The word 'test' appears $count times in the string.";
// Output: The word 'test' appears 2 times in the string.
Explanation:
preg_match_all()
function is used to match all occurrences of a pattern in a string./
.../i
is a regular expression pattern delimiters. The i
flag makes the pattern case-insensitive.\b
is a word boundary anchor that matches the transition between a word character (as defined by \w
) and a non-word character (as defined by \W
).test
matches the word "test" exactly.(?!(123|abc))
is a negative lookahead assertion that matches any position that is not immediately followed by "123" or "abc".preg_match_all()
function returns the number of matches found in the string, which is stored in $count
.Please start posting anonymously - your entry will be published after you log in or create a new account. This space is reserved only for answers. If you would like to engage in a discussion, please instead post a comment under the question or an answer that you would like to discuss
Asked: 2021-05-24 11:00:00 +0000
Seen: 9 times
Last updated: Apr 07 '23
How can a HTTP header be inserted in WordPress?
How can data be stored in a data attribute and utilized through Ajax?
How can an array be passed using typo3 flexform xml and itemsProcConfig?
Does JSON encode fail to retrieve data from the database?
Can the GS1 128 barcode decoder in PHP or Jquery be utilized?
How can Xdebug be used in conjunction with VSCode for Laravel on Sail and WSL2?
In PHP, what is the method for finding encrypted data using the "like" operator?
What is the method to pass a variable from PHP back to JavaScript?
Why do PHP variable variables display unexpected behavior when used with arrays?