問題タブ [messageformat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
16768 参照

java - Java MessageFormat の単一引用符のエスケープ

MessagingFormat 全般についてはすでにいくつかの質問がありますが、私の質問に答えるものはまだ見つかりません。一重引用符がパターンを壊すことは承知しています。MessageFormat や Log4j を使用している場合、「しない」などの方法でプレースホルダーが壊れる可能性があります。

文字列内を参照してください。一重引用符のペアを使用して、一重引用符以外の任意の文字を引用できます。たとえば、パターン文字列 "'{0}'" は、FormatElement ではなく、文字列 "{0}" を表します。一重引用符自体は、 String 全体で二重の一重引用符 '' で表す必要があります

簡単な例:

出力:

したがって、正規表現を使用してすべての一重引用符を置き換えると、機能します。正規表現の先読み/後読みを使用して、「単一の単一引用符」のみを置き換えようとする正規表現を作成しました。

正規表現置換の例:

独自の正規表現を提供する代わりに、「escapeSingleQuotes」を処理する apache-commons ユーティリティ (またはその他のライブラリ) が存在するかどうか疑問に思っています...?

0 投票する
2 に答える
2263 参照

java - 文字列がJavaの特定のMessageFormatと一致するかどうかを確認しますか?

私は MessageFormat を持っています。

次のような文字列があるかどうか疑問に思っています。

上記の文字列が messageFormat を使用して作成されたかどうかを確認するにはどうすればよいですか? つまり、それらは messageFormat と一致しますか?

どうもありがとう!

0 投票する
2 に答える
1060 参照

validation - Struts 2 で @RequiredStringValidator messageParams を使用する

私のメッセージ リソース ファイルには、次の行があります。

電子メール フィールドを検証するために、次のような注釈バリデータを使用しています。

私の質問は、アノテーションを使用してメッセージlabels.emailのパラメーターにリソース値を渡すにはどうすればよいですか? 私はプロパティを試していましたが、成功しませんでした。{0}RequiredStringValidatormessageParam

0 投票する
0 に答える
792 参照

java - オプションのパラメータを持つJava MessageFormatリソース?

メッセージ形式にオプションのパラメーターを指定することはできますか? イベントタイプとパラメーターが文字列としてエンコードされた何かの履歴を示すコードがあります。これは他のコードによってロードされ、タイプ名 (つまり、eventtype..format) に基づいてリソース ルックアップを実行し、格納されたパラメーターを渡します。

イベント タイプの 1 つは、「ユーザー定義のルールが一致したために実行されたアクション」です。以前は、ルール名をパラメーターの 1 つとして含めていませんでしたが、今はそうしたいので、パラメーターを追加するためだけに再定義せずに同じイベント タイプを使用できるようにしたいと考えていました。

私の質問は、このようなことは可能ですか

eventtype.matchedRule.format=Action performed because of user-defined rule {if{0},(Rule name:{0})}

「matchedRule」のイベント タイプがロードされ、パラメータが定義されていない場合、これは次のように解決されます。

"Action performed because of user-defined rule"

ルール名が「My Rule」として定義されている場合、それは次のように解決されます。

"Action performed because of user-defined rule (Rule name: My Rule)"

繰り返しますが、パラメーターがない場合、その時点で別のリソースを渡すことは実際には制御できないため、別のイベント タイプを定義する必要があります。これは、matchedRuleWithRuleName保存される新しいイベントのようなものです。ですでに保存されているものmatchedRule

ヘルプ?

0 投票する
1 に答える
509 参照

jsf-2 - 表示中なので

<h:outputFormat>メッセージのフォーマットに使用しています。

<h:inputText>parameter の代わりに a を表示し、 parameter の代わりに{0}1 ~ <h:selectOneMenu>50 の数字のリストを表示したいと思います{1}

を使用して行うことは可能<f:param>ですか、または代替手段はありますか?

0 投票する
2 に答える
1138 参照

java - Java MessageFormat - エスケープ文字を発行する

strings.xml ファイルで文字列を定義します。

次に、その文字列を取得し、MessageFormat.format を使用して {0} を URL に置き換えます。

str を出力すると、次のように表示されます。

MessageFormatのドキュメントには、引用符のルールがやや混乱していることが記載されており、二重引用符のみを使用する 1 つの例のみが提供されています。ドキュメントを読んだところ、単一引用符の問題は ''' を使用することで解決できるようです。

しかし、アポストロフィの前に\.

私の唯一の要件は、strings.xml で文字列を定義することです (ローカライズをサポートするため)。

0 投票する
2 に答える
1571 参照

java - Struts で、ActionMessage の「メッセージの置換値」を ResourceBundle から取得する方法

それを達成するために私がしたこと。

アクション ファイル:

アプリケーション リソース:

私が欲しいのは:

「メッセージの置換値」をハードコードされた「メンバー」という単語に置き換える簡単な方法があります。お気に入り

しかし

上記の 3 つは、「メッセージの置換値」をそれぞれの言語の表現に置き換えるための長いルートです。

ハードコーディングのように短いルートを探しています。

0 投票する
1 に答える
4608 参照

java - プロパティ ファイルでのメッセージ形式の選択

このリンクを見ましたが、何が間違っているのかわかりません。MessageFormat を使用してファイルからプロパティを取得していますが、渡された整数が 1 以上かどうかに応じてプロパティを動的にしたいと考えています。ファイル内のプロパティは次のようになります。

コードでは、このプロパティを読み取り、引数の配列をMessageFormat.format()渡します (すべてのプロパティで一貫性を保つために配列を渡します。この場合、存在する唯一のオブジェクトは整数値の文字列表現です)。コードのデバッグ中、この文字列が読み取られることがわかりますがMessageFormat.format()、期待どおりに文字列をフォーマットしていないようです。結果は次のようになります。

誰が私が間違っているのか教えてもらえますか? 前に述べたように、整数値の文字列表現を渡していますが、上記のコードで処理できると想定していました。私の理解は間違っていますか?