特定の文字を指定し文字列の中で何番目の文字であるか末尾から検索する方法について
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
itoma
投稿数: 12
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
V9PLUSで文字列中で特定の文字列を文字の末尾から検索して最初にヒットした出現位置からそれ以降の文字列を削除するような仕組を作ろうとしております。
具体的には、↓のような文字列より
1000*1000*1000
文字列末尾より"*"の文字を検索、一番最初にヒットした10番目の*以降の”*1000”の文字列を消し
1000*1000
のような文字列の切出しを行いたいのですが、
文字列の先頭行から出現位置以降の文字を消しこむ仕組だとINSTR関数を利用し文字の出現位置から切出しを行う仕組を作ればよいのですが、
文字列の末尾から出現位置を検索するような関数が見当たらない為
困っております。
できることなら作りこみをするのは避けたいと思っている為、文字列の末尾から特定の文字の出現位置を返すような関数もしくはなんらか簡単に実現できる仕組をご存じの方いらっしゃいませんでしょうか。
具体的には、↓のような文字列より
1000*1000*1000
文字列末尾より"*"の文字を検索、一番最初にヒットした10番目の*以降の”*1000”の文字列を消し
1000*1000
のような文字列の切出しを行いたいのですが、
文字列の先頭行から出現位置以降の文字を消しこむ仕組だとINSTR関数を利用し文字の出現位置から切出しを行う仕組を作ればよいのですが、
文字列の末尾から出現位置を検索するような関数が見当たらない為
困っております。
できることなら作りこみをするのは避けたいと思っている為、文字列の末尾から特定の文字の出現位置を返すような関数もしくはなんらか簡単に実現できる仕組をご存じの方いらっしゃいませんでしょうか。
投票数:0
平均点:0.00
s_nagura
投稿数: 109
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
こんにちは。
Flip関数でひっくり返してからInstrで検索。処理後に再度Flipでひっくり返す、というのはどうでしょうか。
Flip関数でひっくり返してからInstrで検索。処理後に再度Flipでひっくり返す、というのはどうでしょうか。
投票数:1
平均点:10.00
Kake
居住地: 愛媛県松山市
投稿数: 36
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
itomaさん、こんにちは。
ISTR関数にFLIP関数を組み合わせてはどうでしょうか?
全角文字が含まれていると駄目だと思いますが...
ISTR関数にFLIP関数を組み合わせてはどうでしょうか?
全角文字が含まれていると駄目だと思いますが...
投票数:1
平均点:10.00
Take
投稿数: 124
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
こんにちは
いろいろ方法はあると思いますよ。
使う関数はやはりinstr関数になると思いますが、先頭から見つけた場所までを別の変数に移していく方法とflip関数で予め反転させておく方法などです。
がんばって下さい。
いろいろ方法はあると思いますよ。
使う関数はやはりinstr関数になると思いますが、先頭から見つけた場所までを別の変数に移していく方法とflip関数で予め反転させておく方法などです。
がんばって下さい。
投票数:1
平均点:10.00
ISHIJIMA
居住地: 静岡県
投稿数: 1827
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
STRTOKEN関数・STRTOKENCNT関数・STRTOKENIDX関数などを組み合わせてできないでしょうか
投票数:1
平均点:10.00
itoma
投稿数: 12
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
みなさん、返信ありがとうございます。
いろいろ検討した結果
Flip関数でひっくり返してからInstr関数を使う形で
やってみようと思います。
いろいろ検討した結果
Flip関数でひっくり返してからInstr関数を使う形で
やってみようと思います。
投票数:0
平均点:0.00