タグ付けされた質問 「regular-expression」

8
LIKE、SIMILAR TO、またはPostgreSQLの正規表現を使用したパターンマッチング
BまたはDで始まる人の名前を探す単純なクエリを作成する必要がありました。 SELECT s.name FROM spelers s WHERE s.name LIKE 'B%' OR s.name LIKE 'D%' ORDER BY 1 パフォーマンスを向上させるためにこれを書き換える方法があるかどうか疑問に思っていました。だから私は避けることができますor/またはlike?

1
Postgresからの非ASCII行のクエリ
い[:ascii:]クラスの仕事は、すべてのPostgresの中で?彼らのヘルプにはリストされていませんが、それを利用するウェブの例を見ることができます。 UTF-8データベースがあり、照合とc_typ eはen_US.UTF-8であり、Postgresバージョンは9.6.2です。このように非ASCII行を検索すると: select title from wallabag_entry where title ~ '[^[:ascii:]]'; Unicodeシンボルと非Unicodeシンボルの両方を取得します(完全な出力はこちら)。 Сталинская правозащитница: мать Меленкова бабушка Настя Дневник НКВДиста Шабалина: Знает ли Москва положение на фронте? Бег по городу и поездка на осле: как в средневековье наказывали прелюбодеев Как комиссар Крекшин в 1740-е чуть не отменил историю России Have …

2
MySQLでREGEXPを使用してSUBSTRINGを使用する方法
次のような状況があります。MySQLを使用して、記述から正規表現を部分文字列にする必要があります。説明: Lorem D9801 ipsum dolor sit amet D9801はREGEXPです。すべての強力なテキスト記述は、異なるコンテンツを持っていますが、私の正規表現すべきであるように見えます:REGEXP「D [[:桁:]] {4}」 REGEXPの先頭は常に「D」、末尾は「xxxx」-末尾は4桁:Dxxxx REGEXPがtrue / false値のみを返すことは知っていますが、「D9801」値のみを返すクエリを作成するにはどうすればよいですか? 私はこのようなことを試しました: SELECT SUBSTRING (description, LOCATE(REGEXP 'D[[:digit:]]{4}', description), 5) FROM ( SELECT "Lorem D9801 ipsum dolor sit amet" AS description ) temp 私はそれが間違っていることを知っているので、これを試してみます: SELECT id, SUM(description REGEXP 'D[[:digit:]]{4}') AS matches, CASE WHEN (SUM(description REGEXP 'D[[:digit:]]{4}') > 0) …

2
[0-9]は数字、[az]は文字のように、句読点に相当するT-SQLはありますか?
句読点を含む列から値をプルできるようにする[0-9]および[a-z]パターンに相当するT-SQLはありますか? 例えば: Create Table #Test ( Value VarChar(10) ) Insert Into #Test Values ('123a'), ('456b'), ('12ABC'),('AB!23'),('C?D789') Select * From #Test Where Value like '[0-9][0-9][0-9][a-z]' これは、最初の3文字が0から9までの数字で、最後の文字がaからzまでの文字である値を返すため、123aおよびなど456bの値を返しますが、の値は返しません12ABC。 句読点に相当するもの[0-9]が数字や[a-z]文字にあるかどうか知りたいので、返さAB!23れC?D789ますか? 正規表現を使用できる場合^[a-zA-Z0-9]*$、文字列内の英数字に一致する表現を使用する可能性があります。 Where Value like '^[a-zA-Z0-9]*$' これに相当するSQLはありますか? RegExで実行できるこの種のことは知っていますが、T-SQLでそれが必要です。このサーバーにカスタムアセンブリをロードできないため、正規表現を使用できません。 実際の列はvarchar(200)です。照合順序は、Latin1_General_CI_ASです。SQL Server 2012 Standard Editionを使用しています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.