0

Autobloggedを使用して、ブログ投稿としてフィードを取得しています。アイテムのタイトルをメタデータとして使用できるものに変換するために、reg式を作成する必要があります。アクセスできるバックエンドの画面を添付しました。どんな助けでも大歓迎です!

フィードのタイトルの例を次に示します。

タイプワントレーニングイベントニューメキシコ、2012年11月WY

タイプ2トレーニングイベントワシントン州シアトル2012年11月

私はこれになるためにそれが必要です:

<what>Type One Training Event</what> <city>New New Mexico</city>, <%state>WY</state> <month>November</month> <year>2012</year>

<what>Type Two Training Event</what> <city>Seattle</city>, <state>WA</state> <month>November</month> <year>2012</year>

基本的に、イベントという言葉の前にあるものは何でも取り、それを「何」にするということです

イベントという単語の後、コンマの前にあるものをすべて取り、その「都市」を作成します

カンマの後に2文字を取り、その「状態」を作成します

最後の2つの単語を取り、月と年を作成します

Autbloggedバックエンド:ここに画像の説明を入力してください

4

2 に答える 2

0

おそらく一致する:

^(.* Event) (.*), ([A-Z]{2}) +(?i(Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)) +((?:19|20)\d{2})\b

編集:コメントを再確認してください。正規表現を区切り文字で囲む必要があるようです。試す:

/insert_above_regex_here/

大文字と小文字を区別しない場合は、次のようにします。

/insert_above_regex_here_but_remove_(?i_and_matching_)/i

ただし、大文字と小文字を区別しない場合、状態([A-Z]{2})は2つの小文字にも一致します。これで問題ない場合は、それを実行してください。また、「この部分では大文字と小文字を区別する」という正規表現の部分を変更してみます(?-i([A-Z]{2}))が、それはそのエンジンがサポートしているかどうかによって異なります(サポートしていない場合はエラーが発生します)。 。

次に、次のように置き換えます。

<what>$1</what> <city>$2</city>, <state>$3</state> <month>$4</month> <year>$5</year>

そのインターフェイスの正規表現の種類がわからないため(?i、月の正規表現でビットを実行できない可能性があります(ビットの大文字と小文字を区別しないようにするだけです)。月を書くには注意が必要です。 1つの大文字と残りの小文字を使用するか、大文字を使用できるように正規表現を変更できます。

于 2012-01-25T00:19:02.453 に答える
0

v2.9のアップデートがリリースされたら、実際に直接返信するメールがキューにあります。このアップデートでは正規表現機能のバグが修正されていますが、この質問を開いたままにしないように、ここでコメントするつもりでした。

フィードから情報を抽出する機能は、AutoBloggedの最もクールで強力な機能の1つであり、これらの機能でできることの完璧な例です。

まず、使用する正規表現パターンは次のとおりです。

内容:(。*)\ sTraining \ sEvent

:Training \ sEvent \ s([^、] *)

状態:。*、\ s([AZ] {2})

これらを使用するには、フィード設定で新しいカスタムフィールドを作成します。カスタムフィールドも投稿テンプレートと同じ構文を使用するため、強力な正規表現関数を使用してフィードから情報を抽出できることに注意してください。フィールドは次のようになります。

カスタムフィールド

これらのカスタムフィールドを作成すると、投稿テンプレートで使用できるようになり、WordPressの投稿にカスタムフィールドとして追加されます。

これらのカスタムフィールドを設定したら、投稿テンプレートで、、またはとして使用 %what%でき%city%ます%state_code%。前に述べたように、これはWordPressのブログ投稿にもカスタムフィールドを作成します。それが必要ない場合は、投稿テンプレート%regex("%title%", "(.*)\sTraining\sEvent", "1")%で直接使用する代わりに使用できます。%what%

構文の簡単な説明:使用する場合、これは次の%regex("%title%", "(.*)\sTraining\sEvent", "1")%ことを意味します。

  • %title%フィールドからこの情報を取得します
  • 正規表現パターンを使用する(.*)\sTraining\sEvent
  • 一致参照1、(.*)パーツを使用します。
于 2012-01-27T05:18:34.263 に答える