HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0306
ノダッシー末尾についている文字を削りたい7未解決


ノダッシー

リンク

2015/3/6(Fri) 14:42:07|NO.67722

いつもお世話になってます
getpath(filepath, 9)で取得したファイル名の語尾を削って表示させるにはどうしたらいいでしょうか
例えばハードディスク02だったら02の部分を削りたいです
キバン03なら03
よろしくお願いします



この記事に返信する


kanahiron

リンク

2015/3/6(Fri) 15:00:54|NO.67723

strmidで後ろの2文字を消せます



科学太郎

リンク

2015/3/6(Fri) 15:35:24|NO.67725

> 例えばハードディスク02だったら02の部分を削りたいです
> キバン03なら03
末尾の数字だけ削除したいのでしょうか?
文字数が決まっていれば楽ですよ。



窓月らら

リンク

2015/3/6(Fri) 15:55:01|NO.67726

// -2の部分が後ろから削る分です。

a="キバン03"
b=strmid(a,0,strlen(a)-2)
mes b



woodfields

リンク

2015/3/8(Sun) 00:20:12|NO.67750

正規表現を使えば簡単に末尾連番を""に置換、カットできます。

name="ab87cdefg0145613575" mes "元の文字列:"+name newcom oReg,"VBScript.RegExp" oReg("Pattern")="[0-90-9]+$" ; 末尾連番の検索パターン if oReg("Test", name) { mes "ヒット" name=oReg("Replace", name, "") } delcom oReg mes "末尾連番カット→:"+name



ノダッシー

リンク

2015/3/9(Mon) 14:17:56|NO.67770

お返事遅くなりましたが、できました
正規表現難しいのでまだ覚えられませんがこんな方法もあるのかと勉強になりました
ありがとうございました



スペース

リンク

2015/3/9(Mon) 14:21:30|NO.67771

>>科学太郎さん
スレ主は楽かどうかを聞きたいのではなくどのような命令を使えば可能なのか、を聞いてるんですよ。



科学太郎

リンク

2015/3/9(Mon) 19:10:58|NO.67772

スペースさんへ
> スレ主は楽かどうかを聞きたいのではなくどのような命令を使えば可能なのか、を聞いてるんですよ。
知ってます。
私は2桁なのか、任意桁なのかでアドバイスが変わりますので、
どちらでしょうね?と訪ねたわけです。

固定桁なら既に回答がありましたしね。
あと正規表現は私自身が理解してなかったので。

s="キバン1234567890" n=strlen(s)-1 mes strf("変換前:%s",s) repeat n c=peek(s,n-cnt) if('0'<=c)and(c<='9'):poke s,n-cnt,0 loop mes strf("変換後:%s",s)

正規表現を使わない任意桁の数値を削除する方法です。
どうぞ。



ONION software Copyright 1997-2023(c) All rights reserved.