0

私のコードには次のものがあります:

optionlist.AppendFormat("<li>
<a href=\"setlocale.aspx?returnURL=Default.aspx&localesetting={0}\">{1}</a>
</li>", DB.RSField(rs, "Name"), DB.RSField(rs, "Name"));

データベース内の名前の値は次のとおりです。en-US

最初の3文字列を見逃して、米国のみを表示するにはどうすればよいですか?

ロケールがfr-FRとして表示される場合、frを2回表示することは意味がありません。

しかし、fr-FRはFRとして表示する必要があるため、ahrefの値を保持する必要があります。

DB内に新しいフィールドを作成してDescription2と呼び、国ごとにUS、FR、およびDEを手動で書き留めることができます。これは私の簡単な回避策です。idが文字通り説明から3つの文字列文字を取り除く方法についてのアイデアはありますか?

4

4 に答える 4

2
string[] subStr = Name.Split("-");

optionlist.AppendFormat("<li>
<a href=\"setlocale.aspx?returnURL=Default.aspx&localesetting={0}\">{1}</a>
</li>", DB.RSField(rs, subStr[1]), DB.RSField(rs, subStr[1]));
于 2012-06-18T09:58:24.950 に答える
2

文字の長さが常に同じである場合は、部分文字列を使用します

String x = "en-US";
x.Substring(3);
于 2012-06-18T09:56:18.363 に答える
2

{1}文字列を表示しているだけなので、2番目の引数( )を次のように保持できます。

DB.RSField(rs, "Name").Substring(DB.RSField(rs, "Name").IndexOf('-')+1, 2)

...そして{0}あなたがあなたのためにそれを必要とするのと同じままにしてくださいhref

于 2012-06-18T09:57:53.747 に答える
2
optionlist.AppendFormat("<li>
<a href=\"setlocale.aspx?returnURL=Default.aspx&localesetting={0}\">{1}</a>
</li>", DB.RSField(rs, "Name").Substring(3), DB.RSField(rs, "Name").Substring(3));
于 2012-06-18T09:58:03.073 に答える