Рубрики

Голанг | Замена всей строки, которая соответствует регулярному выражению

Регулярное выражение — это последовательность символов, которые определяют шаблон поиска. Перейти языковой поддержки регулярных выражений. Регулярное выражение используется для анализа, фильтрации, проверки и извлечения значимой информации из большого текста, такого как журналы, выходные данные, генерируемые другими программами и т. Д.
В регулярном выражении Go вы можете заменить исходную строку другой строкой, если указанная строка совпадает с указанным регулярным выражением с помощью метода ReplaceAllString () . В этом методе $ sign означает интерпретацию, как в Expand, так как $ 1 указывает текст первого субматча. Этот метод определен в пакете regexp, поэтому для доступа к этому методу вам необходимо импортировать пакет regexp в вашу программу.

Синтаксис:

func (re *Regexp) ReplaceAllString(str, r string) string

Пример 1:

// Перейти к программе, чтобы проиллюстрировать, как
// заменить строку указанным регулярным выражением
package main

  
import (

    "fmt"

    "regexp"

)

  
// Основная функция
func main() {

  

    // Заменить строку указанным регулярным выражением

    // Использование метода ReplaceAllString ()

    m1 := regexp.MustCompile(`x(p*)y`)

  

    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "B"))

    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy--", "$1"))

    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "$1P"))

    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "${1}Q"))

  
}

Выход:

B--BxxppB-
--pppxxpp--
--xxpp-
Q--pppQxxppQ-

Пример 2:

// Перейти к программе, чтобы проиллюстрировать, как заменить
// строка с указанным регулярным выражением
package main

  
import (

    "fmt"

    "regexp"

)

  
// Основная функция
func main() {

  

    // Создание и инициализация строки

    // Использование стенографического объявления

    s := "Geeks-for-Geeks-for-Geeks-for-Geeks-gfg"

  

    // Замена всех строк

    // Использование метода ReplaceAllString ()

    m := regexp.MustCompile("^(.*?)Geeks(.*)$")

    Str := "${1}GEEKS$2"

    res := m.ReplaceAllString(s, Str)

    fmt.Println(res)

  
}

Выход:

GEEKS-for-Geeks-for-Geeks-for-Geeks-gfg

Рекомендуемые посты:

Голанг | Замена всей строки, которая соответствует регулярному выражению

0.00 (0%) 0 votes