Rumah pembangunan bahagian belakang Golang Bagaimana untuk mengekstrak nombor daripada rentetan Golang menggunakan ungkapan biasa?

Bagaimana untuk mengekstrak nombor daripada rentetan Golang menggunakan ungkapan biasa?

Jun 04, 2024 pm 01:12 PM
ungkapan biasa golang

使用正则表达式从 Golang 字符串中提取数字:正则表达式语法:[0-9]+ 匹配一个或多个十进制数字。使用 regexp 包:导入 regexp 包并编译正则表达式。使用 FindAllString 查找所有匹配项。循环输出提取的数字。

如何用正则表达式从 Golang 字符串中提取数字?

如何用正则表达式从 Golang 字符串中提取数字

在 Golang 中,正则表达式是用于模式匹配和文本处理的强大工具。本教程将指导你如何使用正则表达式从字符串中提取数字。

1. 正则表达式语法

以下是匹配数字的正则表达式语法:

1

[0-9]+

Salin selepas log masuk

它表示匹配一个或多个十进制数字。

2. 使用 regexp 包

Go 提供了 regexp 包用于处理正则表达式。以下是提取数字的步骤:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

import (

    "fmt"

    "regexp"

)

 

func main() {

    text := "The year is 2023, and the value is $100."

     

    // 编译正则表达式

    r, err := regexp.Compile("[0-9]+")

    if err != nil {

        // 在这里处理错误

    }

     

    // 查找所有匹配项

    matches := r.FindAllString(text, -1)

     

    // 循环输出提取的数字

    for _, match := range matches {

        fmt.Println(match) // 将打印 "2023" 和 "100"

    }

}

Salin selepas log masuk

3. 用例:提取价格

假设我们有一个包含产品名称和价格的字符串:

1

"iPhone 13: $899, Samsung Galaxy S22: $799"

Salin selepas log masuk

我们可以用正则表达式提取价格:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

func extractPrice(text string) ([]string, error) {

    r, err := regexp.Compile("[0-9]+")

    if err != nil {

        return nil, err

    }

 

    matches := r.FindAllString(text, -1)

    return matches, nil

}

 

func main() {

    text := "iPhone 13: $899, Samsung Galaxy S22: $799"

    prices, err := extractPrice(text)

    if err != nil {

        // 在这里处理错误

    }

     

    for _, price := range prices {

        fmt.Println(price) // 将打印 "899" 和 "799"

    }

}

Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk mengekstrak nombor daripada rentetan Golang menggunakan ungkapan biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membaca dan menulis fail dengan selamat menggunakan Golang? Bagaimana untuk membaca dan menulis fail dengan selamat menggunakan Golang? Jun 06, 2024 pm 05:14 PM

Bagaimana untuk membaca dan menulis fail dengan selamat menggunakan Golang?

Bagaimana untuk mengkonfigurasi kolam sambungan untuk sambungan pangkalan data Golang? Bagaimana untuk mengkonfigurasi kolam sambungan untuk sambungan pangkalan data Golang? Jun 06, 2024 am 11:21 AM

Bagaimana untuk mengkonfigurasi kolam sambungan untuk sambungan pangkalan data Golang?

Persamaan dan Perbezaan antara Golang dan C++ Persamaan dan Perbezaan antara Golang dan C++ Jun 05, 2024 pm 06:12 PM

Persamaan dan Perbezaan antara Golang dan C++

Seberapa curam keluk pembelajaran seni bina rangka kerja golang? Seberapa curam keluk pembelajaran seni bina rangka kerja golang? Jun 05, 2024 pm 06:59 PM

Seberapa curam keluk pembelajaran seni bina rangka kerja golang?

Bagaimana untuk menjana elemen rawak dari senarai di Golang? Bagaimana untuk menjana elemen rawak dari senarai di Golang? Jun 05, 2024 pm 04:28 PM

Bagaimana untuk menjana elemen rawak dari senarai di Golang?

Perbandingan kebaikan dan keburukan rangka kerja golang Perbandingan kebaikan dan keburukan rangka kerja golang Jun 05, 2024 pm 09:32 PM

Perbandingan kebaikan dan keburukan rangka kerja golang

Apakah amalan terbaik untuk pengendalian ralat dalam rangka kerja Golang? Apakah amalan terbaik untuk pengendalian ralat dalam rangka kerja Golang? Jun 05, 2024 pm 10:39 PM

Apakah amalan terbaik untuk pengendalian ralat dalam rangka kerja Golang?

arahan penggunaan dokumen rangka kerja golang arahan penggunaan dokumen rangka kerja golang Jun 05, 2024 pm 06:04 PM

arahan penggunaan dokumen rangka kerja golang

See all articles