Mysql 8 regex changes and word boundary weirdness branch by robinsowell · Pull Request #5293 · ExpressionEngine/ExpressionEngine · GitHub
Skip to content

Mysql 8 regex changes and word boundary weirdness branch#5293

Open
robinsowell wants to merge 1 commit into
7.devfrom
bugfix/mysql8-regex-word-boundary
Open

Mysql 8 regex changes and word boundary weirdness branch#5293
robinsowell wants to merge 1 commit into
7.devfrom
bugfix/mysql8-regex-word-boundary

Conversation

@robinsowell

@robinsowell robinsowell commented May 21, 2026

Copy link
Copy Markdown
Contributor

https://dev.mysql.com/doc/refman/8.0/en/regexp.html

doc change: ExpressionEngine/ExpressionEngine-User-Guide#1149

Basically? The word boundary changed. Goobering channel entry search param and some pro search code. This adds a helper to juggle that based on mysql version and type- aka maria.

User ran into an issue on mysql 8 specifically with /system/ee/legacy/models/channel_model.php and 'Note: MySQL's nutty POSIX regex word boundary is [[:>:]]' which is no longer necessarily true. Also spotted the issue in pro search.

So this:

  • Adds a database helper for building whole-word REGEXP patterns compatible with MySQL 8.0.4+ ICU regex behavior.
  • Updates channel field search and Pro Search full-word matching to use the helper instead of hardcoded Spencer word-boundary markers.
  • Preserves legacy [[:<:]] / [[:>:]] behavior for MariaDB, older MySQL versions, and unknown database versions.

And added some tests for the above. Need to go make some docs additions to go along with this....

https://dev.mysql.com/doc/refman/8.0/en/regexp.html

Basically? The word boundary changed.  Goobering channel entry search param and some pro search code.  This adds a helper to juggle that based on mysql version and type- aka maria.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bug: Accepted Bug has been confirmed, is reproducible, and ready to work on.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant