A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
#2です。
えーと、解決したのかな~。#1の補足を読んで自分も#3、#4のような回答をしようと思ったんだけどそれは控えて様子を見てました。確かに#1の補足どおり読み取ると#4のような回答になる。でもね、質問者さんの過去の投稿を読むとそれぐらいはわかってるんじゃないかと思ったんですよ。たとえばQNo.4071972でやはりvbscriptの質問をされてるわけですが、その中でも文字列の比較はやってるんですよね。具体的には
> if lcase(folderitem.name) = lcase(sConPaneName) then
のあたりで。
基本のキですからね。質問者さんが訊きたいのは本当にこういうことなのか、それとも他にあるのか、正直よくわかりません。他の回答者の方も同じような思いなんじゃないかと思います。
というわけで、質問がうまく伝わってないと思うなら補足してください(解決済みならその旨を)。
No.4
- 回答日時:
No1です。
もしかして、『AでもなくBでもない場合』について質問されてますか?
IPアドレスがどうじゃなく、単純な文字列の質問として。
以下例ではIPアドレスを address とします。
address の値は色々と変えてみて下さい。
-------------------------------------------------------
Option Explicit
Dim address
address = "192.168.1.11"
If (address <> "192.168.1.1" And address <> "10.1.1.1") Then
Call MsgBox("IPアドレスは異常です")
Else
Call MsgBox("IPアドレスは正常です")
End If
-------------------------------------------------------
If文では address が "192.168.1.1" 以外で、かつ
"10.1.1.1" 以外の場合に true となります。
メッセージには "IPアドレスは異常です" と表示しています。
IPアドレスが "192.168.1.1" もしくは "10.1.1.1" のどちらかと
完全一致する場合のみ false となり、"IPアドレスは正常です" となります。
以上でよろしいでしょうか。
No.2
- 回答日時:
質問からは192.168.1.1、192.168.1.11、10.1.1.1が正解なんだろうなとは思いますが、192.168.1.2が正常なのか異常なのかわかりません。
ちゃんとした回答を期待するなら、正常なIPアドレスを正確に補足するべきだと思います。連続する場合は範囲でいいです。ということで詳細不明ですが、192.168.1.1~192.168.1.254の範囲が正常だということにして説明を続けます。
いろいろやり方はあると思うけど、今回はドット付きの10進表記をロングIPアドレスに変換して比較したらどうだろう(変換のやりかたは参考URLを参照)。
正常な範囲は192.168.1.1~192.168.1.254なのでロングIPアドレスに変換すると3232235777~3232236030になります。192.168.1.11が正常か判断するには、ロングIPに変換すると3232235787になるので、これが3232235777~3232236030の範囲にあるかを調べればいいと思います。
どうしても文字列で比較したいなら#1さんのように正規表現でやりますが。
参考URL:http://d.hatena.ne.jp/KuroNeko666/20071225/11985 …
No.1
- 回答日時:
以下コードは、文字列"192.168.1.1"を含む文字列を
検証するサンプルコードです。
-------------------------------------------------------
Option Explicit
Dim objRE
Set objRE = CreateObject("VBScript.RegExp")
objRE.Pattern = "192.168.1.1"
If objRE.Test("192.168.1.11") Then
Call MsgBox("おぅけぃべいべぇ")
Else
Call MsgBox("おーぅのーぅ…")
End If
Set objRE = Nothing
-------------------------------------------------------
"192.168.1.1" というパターンを作成し、Testメソッドで
検証しています。この例では結果がTrueになります。
"192.168.1.1" をパターンとした場合の結果例です。
"192.168.1.1" → true
"192.168.1.11" → true
"192.168.1.2" → false
単に"192.168.1.1" と "192.168.1.11"だけを検証したいのであれば
case文で対応すれば良いかと思います。
この回答への補足
“引っかかる”の表現が悪く申し訳ありません。
期待したいのは192.168.1.1「以外」で、かつ10.1.1.1「以外」だった場合はifの中にあるコマンドを実行させたいのですが、
InStrを使うと、IPアドレスが192.168.1.11だった場合、文字として192.168.1.1が含まれているため、1文字多くても192.168.1.1と同じ動きをしてしまいます。
完全一致での文字列比較をさせる必要があるのですが、どうしたらいいのか。
というのが質問の内容です。お手数かけます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/01/23 17:13
- Excel(エクセル) VBAで “:” を含むセルの特定 2 2023/05/11 16:30
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) ExcelVBAでDo Until loopのネスト、IF文を使って一致する物と一致しない物としたい 11 2022/12/24 17:46
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB6.0の「vbFromUnicode」はVB....
-
C#で文字列を数値に変換する方法
-
WORD型をCString型に変換する方法
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
16進をASCIIコードに変換する...
-
ASPでVBのFormat関数のような機...
-
n進数の値を10進数の値に変換す...
-
C++ 文字列変数と16進数の比較
-
vbscriptのifで文字列を扱いたい
-
VC++ std::stringからLPCWSTRに...
-
16進コード文字列を文字列に変換
-
VB6.0 String型→Long型変換方法...
-
VBA 変数名に変数を使用したい。
-
C#でbyte配列から画像を表示さ...
-
XMLでデータとして画像を指定す...
-
EXCELのVBAでLenB関数について
-
TextFieldParserの固定長桁数を...
-
【VB】コンボボックスにデータ...
-
SQLを発行とは?クエリの作成と...
-
VBAでアクセスDBからデータの取...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6.0の「vbFromUnicode」はVB....
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
16進をASCIIコードに変換する...
-
WORD型をCString型に変換する方法
-
C#で文字列を数値に変換する方法
-
【C++/CLI】int型からString型...
-
バイト型のデータをLong型に変換
-
VB6.0 String型→Long型変換方法...
-
C++ 文字列変数と16進数の比較
-
C#でListとDictionaryの判別方法
-
2の補数の計算について
-
Boolean型変数の値を反転する方法
-
数字→漢数字変換
-
16進コード文字列を文字列に変換
-
ASPでVBのFormat関数のような機...
-
10進数を2進数
-
VC++ std::stringからLPCWSTRに...
-
エクセルでメールヘッダーを解...
-
対数変換のついて
-
textbox.textやlabel.captionの...
おすすめ情報