Я всегда использую nvarchar, поскольку он позволяет то, что я создаю для противостояния в значительной степени любым данным, которые я бросаю в него. Моя система CMS делает китайский язык случайно, потому что я использовал nvarchar. В эти дни любые новые приложения не должны действительно касаться суммы требуемого пространства.
Попробуйте:
/(@|at)/
Это означает либо @
, либо в
, но не оба сразу. Он также записывается в группу, поэтому вы можете позже получить доступ к точному совпадению с помощью обратной ссылки, если захотите.
/(?:@|at)/
Ответ Мейерса выполнит захват пары; мой не будет. Что вы должны использовать, зависит от того, хотите ли вы захват парена.
пробовали ли вы
@|at
, который работает (в версии регулярных выражений .NET) для следующего текста
johnsmith@gmail.com johnsmithatgmail.com
если это только 2 вещи, которые вы хотите захватить, не нужно регулярное выражение
if ( strpos($string,"@")!==FALSE || strpos($string,"at") !==FALSE ) {
# do your thing
}