2

これが私がすぐに思いついたものです。regexKitLiteiPhoneで動作します:

#define kUserRegex @"((?:@){1}[0-9a-zA-Z_]{1,15})";

Twitter では、文字/数字、アンダースコア_、および最大 15 文字 (を除く@) のみを使用できます。私の正規表現は問題ないように見えますが、電子メール アドレスで誤検知が報告されます。

#define kHashtagRegex @"((?:#){1}[0-9a-zA-Z_àáâãäåçèéêëìíîïðòóôõöùúûüýÿ]{1,140})";

kHashtagRegex強調された単語で動作しますが、UTF-8 単語には十分ではありません。ハッシュタグの「技術仕様」とは?

これらを解析するために何を使用するかについての参照はどこかにありますか? または、この正規表現を強化する方法についてアドバイスはありますか?

4

2 に答える 2

4

これが完全かどうかはわかりませんが、これは私がすることです:


@ユーザー名については、電子メールを削除する前に、空白/文字列の開始のチェックを追加します(?:^|\s)

#define kUserRegex @"((?:^|\s)(?:@){1}[0-9a-zA-Z_]{1,15})";

ハッシュタグについては、\w または \d とします。

#define kHashtagRegex @"((?:#){1}[\w\d]{1,140})";
于 2011-09-23T22:16:08.210 に答える
0
REGEX_HASHTAG = '/(^|[^0-9A-Z&\/\?]+)([##]+)([0-9A-Z_]*[A-Z_]+[a-z0-9_üÀ-ÖØ-öø-ÿ]*)/iu';`
于 2011-09-24T10:40:46.627 に答える