Fscanf と C のようなフィールドの省略

WBOY
リリース: 2024-02-12 16:18:05
転載
1135 人が閲覧しました

Fscanf 并像 C 中那样省略字段

質問内容

Cのように%*sフィールドを省略することは可能でしょうか?

var pid int
fmt.Fscanf(r, "%*s %d", &pid)
ログイン後にコピー

回避策

実際には、Go ではこれを行うことはできません (少なくとも Go 1.21.0 では)。

ソースコードは次を示します:

  • フォーマット文字列にはフィールドが省略された動詞はありません (C の %*s など)。実際、文字列の動詞は常に 単一の です。文字番号 ## (% s%v%q%X または %X)
  • Fscanf メソッド 反復 パラメータ (Fscanf 配列 a(r io.Reader ,フォーマット文字列、a...任意))。したがって、値を気にしない場合でも、a でパラメータを定義する必要があります 変数を定義したくない場合は、以下を使用できます:
  • リーリー
その他の代替手段

特定のケースでは、リーダー内の何かを解析するには、まずリーダーを文字列に読み取ります (例:

io.ReadAll

):

CB835C294C06824721603abd255bd78a 次に、strings.Split

メソッドまたは正規表現を使用します。例:

および

strings.Split
  1. リーリー
  2. 正規表現を使用します:
    リーリー
  1. 他にも方法があるかもしれませんが、これらで十分です。それが役立つことを願っています。

以上がFscanf と C のようなフィールドの省略の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート