Какая функция нужна для замены символа в строке в Python?
Для замены символа в строке используется метод ‘replace()’. В качестве обязательных аргументов методу передаются искомая строка и строка, на которую нужно заменить искомую.
txt = 'I like bananas' x = txt.replace('bananas', 'apples') print(x) # => I like apples
Также в качестве третьего необязательного аргумента можно передать целое число, обозначающее какое количество вхождений искомой строки нужно поменять. Если не передавать этот параметр, будут заменены все вхождения искомой строки:
txt = 'one one was a race horse, two two was one too.' x = txt.replace('one', 'three') print(x) # => three three was a race horse, two two was three too.
txt = 'one one was a race horse, two two was one too.' x = txt.replace('one', 'three', 2) print(x) # => three three was a race horse, two two was one too.
String. Replace Метод
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает новую строку, в которой все вхождения заданного знака Юникода или String в текущей строке заменены другим заданным знаком Юникода или String.
Перегрузки
Возвращает новую строку, в которой все вхождения заданного знака Юникода в текущем экземпляре заменены другим заданным знаком Юникода.
Возвращает новую строку, в которой все вхождения заданной строки в текущем экземпляре заменены другой заданной строкой.
Возвращает новую строку, в которой все вхождения заданной строки в текущем экземпляре заменены другой заданной строкой с использованием указанного типа сравнения.
Возвращает новую строку, в которой все вхождения заданной строки в текущем экземпляре заменены другой заданной строкой с использованием указанных языка и региональных параметры, а также учета регистра.
Replace(Char, Char)
Возвращает новую строку, в которой все вхождения заданного знака Юникода в текущем экземпляре заменены другим заданным знаком Юникода.
public: System::String ^ Replace(char oldChar, char newChar);
public string Replace (char oldChar, char newChar);
member this.Replace : char * char -> string
Public Function Replace (oldChar As Char, newChar As Char) As String
Параметры
Заменяемый знак Юникода.
Знак Юникода для замены всех обнаруженных вхождений oldChar .
Возвращаемое значение
Строка, эквивалентная данному экземпляру, но с тем отличием, что все вхождения oldChar заменены на newChar . Если oldChar не обнаружен в текущем экземпляре метод возвращает текущий экземпляр без изменений.
Примеры
В следующем примере создается список значений, разделенных запятыми, заменяя пробелы между рядами чисел.
using namespace System; int main() < String^ str = "1 2 3 4 5 6 7 8 9"; Console::WriteLine( "Original string: \"\"", str ); Console::WriteLine( "CSV string: \"\"", str->Replace( ' ', ',' ) ); > // // This example produces the following output: // Original string: "1 2 3 4 5 6 7 8 9" // CSV string: "1,2,3,4,5,6,7,8,9" //
String str = "1 2 3 4 5 6 7 8 9"; Console.WriteLine("Original string: \"\"", str); Console.WriteLine("CSV string: \"\"", str.Replace(' ', ',')); // This example produces the following output: // Original string: "1 2 3 4 5 6 7 8 9" // CSV string: "1,2,3,4,5,6,7,8,9"
let str = "1 2 3 4 5 6 7 8 9" printfn $"Original string: \"\"" printfn $"CSV string: \"\"" // This example produces the following output: // Original string: "1 2 3 4 5 6 7 8 9" // CSV string: "1,2,3,4,5,6,7,8,9"
Class stringReplace1 Public Shared Sub Main() Dim str As [String] = "1 2 3 4 5 6 7 8 9" Console.WriteLine("Original string: """"", str) Console.WriteLine("CSV string: """"", str.Replace(" "c, ","c)) End Sub End Class ' This example produces the following output: ' Original string: "1 2 3 4 5 6 7 8 9" ' CSV string: "1,2,3,4,5,6,7,8,9"
Комментарии
Этот метод выполняет порядковый поиск (с учетом регистра и без учета языка и региональных параметров) для поиска oldChar .
Этот метод не изменяет значение текущего экземпляра. Вместо этого он возвращает новую строку, в которой все вхождения oldChar заменяются newChar на .
Так как этот метод возвращает измененную строку, можно связать последовательные Replace вызовы метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Ниже приведен пример.
String s = new String('a', 3); Console.WriteLine("The initial string: ''", s); s = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd'); Console.WriteLine("The final string: ''", s); // The example displays the following output: // The initial string: 'aaa' // The final string: 'ddd'
let s = new string('a', 3) printfn $"The initial string: ''" let s2 = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd') printfn $"The final string: ''" // The example displays the following output: // The initial string: 'aaa' // The final string: 'ddd'
Module Example Public Sub Main() Dim s As New String("a"c, 3) Console.WriteLine("The initial string: ''", s) s = s.Replace("a"c, "b"c).Replace("b"c, "c"c).Replace("c"c, "d"c) Console.WriteLine("The final string: ''", s) End Sub End Module ' The example displays the following output: ' The initial string: 'aaa' ' The final string: 'ddd'
См. также раздел
- Char
- Concat(Object)
- Insert(Int32, String)
- Join(String, String[])
- Remove(Int32, Int32)
- Split(Char[])
- Substring(Int32)
- Trim(Char[])
Применяется к
Replace(String, String)
Возвращает новую строку, в которой все вхождения заданной строки в текущем экземпляре заменены другой заданной строкой.
public: System::String ^ Replace(System::String ^ oldValue, System::String ^ newValue);
public string Replace (string oldValue, string newValue);
public string Replace (string oldValue, string? newValue);
member this.Replace : string * string -> string
Public Function Replace (oldValue As String, newValue As String) As String
Параметры
Строка, которую требуется заменить.
Строка для замены всех вхождений oldValue .
Возвращаемое значение
Строка, эквивалентная текущей строке, но с тем отличием, что все вхождения oldValue заменены на newValue . Если oldValue не обнаружен в текущем экземпляре метод возвращает текущий экземпляр без изменений.
Исключения
oldValue имеет значение null .
oldValue является пустой строкой («»).
Примеры
В следующем примере показано, как можно использовать Replace метод для исправления орфографической ошибки.
using namespace System; int main() < String^ errString = "This docment uses 3 other docments to docment the docmentation"; Console::WriteLine( "The original string is:\n''\n", errString ); // Correct the spelling of S"document". String^ correctString = errString->Replace( "docment", "document" ); Console::WriteLine( "After correcting the string, the result is:\n''", correctString ); > // // This code example produces the following output: // // The original string is: // 'This docment uses 3 other docments to docment the docmentation' // // After correcting the string, the result is: // 'This document uses 3 other documents to document the documentation' //
string errString = "This docment uses 3 other docments to docment the docmentation"; Console.WriteLine("The original string is:''", Environment.NewLine, errString); // Correct the spelling of "document". string correctString = errString.Replace("docment", "document"); Console.WriteLine("After correcting the string, the result is:''", Environment.NewLine, correctString); // This code example produces the following output: // // The original string is: // 'This docment uses 3 other docments to docment the docmentation' // // After correcting the string, the result is: // 'This document uses 3 other documents to document the documentation' //
open System let errString = "This docment uses 3 other docments to docment the docmentation" printfn $"The original string is:''" // Correct the spelling of "document". let correctString = errString.Replace("docment", "document") printfn $"After correcting the string, the result is:''" // This code example produces the following output: // // The original string is: // 'This docment uses 3 other docments to docment the docmentation' // // After correcting the string, the result is: // 'This document uses 3 other documents to document the documentation' //
Public Class ReplaceTest Public Shared Sub Main() Dim errString As String = "This docment uses 3 other docments to docment the docmentation" Console.WriteLine("The original string is:''", Environment.NewLine, errString) ' Correct the spelling of "document". Dim correctString As String = errString.Replace("docment", "document") Console.WriteLine("After correcting the string, the result is:''", Environment.NewLine, correctString) End Sub End Class ' ' This code example produces the following output: ' ' The original string is: ' 'This docment uses 3 other docments to docment the docmentation' ' ' After correcting the string, the result is: ' 'This document uses 3 other documents to document the documentation' '
Комментарии
Если newValue имеет значение null , все вхождения oldValue удаляются.
Этот метод не изменяет значение текущего экземпляра. Вместо этого он возвращает новую строку, в которой все вхождения oldValue заменяются newValue на .
Этот метод выполняет порядковый поиск (с учетом регистра и без учета языка и региональных параметров) для поиска oldValue .
Так как этот метод возвращает измененную строку, можно связать последовательные Replace вызовы метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Ниже приведен пример.
String s = "aaa"; Console.WriteLine("The initial string: ''", s); s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d"); Console.WriteLine("The final string: ''", s); // The example displays the following output: // The initial string: 'aaa' // The final string: 'ddd'
let s = "aaa" printfn $"The initial string: ''" let s2 = s.Replace("a", "b").Replace("b", "c").Replace("c", "d") printfn $"The final string: ''" // The example displays the following output: // The initial string: 'aaa' // The final string: 'ddd'
Module Example Public Sub Main() Dim s As String = "aaa" Console.WriteLine("The initial string: ''", s) s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d") Console.WriteLine("The final string: ''", s) End Sub End Module ' The example displays the following output: ' The initial string: 'aaa' ' The final string: 'ddd'
См. также раздел
- Concat(Object)
- Insert(Int32, String)
- Join(String, String[])
- Remove(Int32, Int32)
- Split(Char[])
- Substring(Int32)
- Trim(Char[])
Как заменить символ в строке на языке Си?
При сборке вылезает *warning: assignment to ‘char’ from ‘char ‘ makes integer from pointer without a cast [-Wint-conversion]. Запуск программы выводит вместо ожидаемого «RWE», «DWE».
Отслеживать
48.7k 17 17 золотых знаков 56 56 серебряных знаков 100 100 бронзовых знаков
задан 18 июн 2020 в 21:17
Dart Revan Dart Revan
9 1 1 серебряный знак 4 4 бронзовых знака
18 июн 2020 в 21:32
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
В языке С двойные кавычки » обозначают строку, массив с завершаешим нуливым символом \0 а одинарные кавычки ‘ одиночный символ, если вы хотите на определном месте строки переписат символ нужно указать что вы переписываете символ.
name[0] = 'R';
а не пытаетесь на место символа записать строку.
Отслеживать
ответ дан 19 июн 2020 в 3:30
3,030 1 1 золотой знак 11 11 серебряных знаков 20 20 бронзовых знаков
В си по-разному записываются символы и строки (символы в одинарных кавычках, строки — в двойных). При этом строка — это просто массив символов. Поэтому «R» имеет тип const char* (т.е. константный указатель на массив символов)
В строке name[0] = «R»; Вы пытаетесь присвоить символу строку (т.е. указатель), из-за чего компилятор производит неявное преобразование (о чем, собственно, Вас и предупреждает)
Исправьте двойные кавычки вокруг R на одинарные.
Отслеживать
ответ дан 19 июн 2020 в 3:36
53 5 5 бронзовых знаков
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.26.3951
Заменить букву в тексте (строке)

Необходимо программно изменить каждую цифру на определенные символы и сохранить.
К примеру 1 изменить на abc
2 на bcd
3 на cdf
4 на dfj
Смысл думаю понятен.
Помогите пожалуйста реализовать
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

В каждом слове заменить первую букву на прописную
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Заменить прописной каждую первую букву слов, начинающихся с гласной буквы
Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив.
Определить число слов в каждой строке RichTextBox, содержащих букву из TextBox
Написать функцию, которая определяет количество слов в данной строке, содержащих букву из textBox.

Строки. Заменить в строке букву е на букву и, а букву и на е до первой точки
Задание 3. Дана строка символов. Замените в ней букву е на букву и, а букву и на е до первой.
174 / 174 / 57
Регистрация: 08.01.2013
Сообщений: 335

Сообщение было отмечено Вова Ковальчук как решение
Решение
Пример замены символов:
string str = "123456"; str = str.Replace("1", "abc").Replace("2", "df");
Как из файла считать в переменную, я думаю вы знаете.
PS. А вообще пользуйтесь поиском, куча тем с подобными вопросами (пруф).
Регистрация: 24.06.2014
Сообщений: 100
Спасибо, вот как сделал :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
string str = string.Empty; using (System.IO.StreamReader reader = System.IO.File.OpenText("C:\\Program Files\\KeysCVS\\" + (textBox1.Text) + ("\\") + ("Login.keyCVS"))) { str = reader.ReadToEnd(); } // цифры / знаки str = str.Replace("1", "asdqwidjkl1231qwdSaduvscvaywdsc"). Replace("2", "waqdfewjpjkilqwndpik;mlqwdmk;lo"). Replace("3", "kjhsdcuhlwxcwdowidklmkiwdiwdjoq"). Replace("4", "lsdcqwmcpwodkkovd;ldkwokqdsdssd"). Replace("5", "mcdwkdwqx,wqdk[kd;'sadkdjsadhkl"). Replace("6", "asd;lkd;slddsd;lkl;wdnkclndnjlk"). Replace("7", "dcaslkcm;lolwmcl;scklsdcassdo;s"). Replace("8", "qlsa;smckmwjdklmsld;asj;dl;odsd"). Replace("9", "vc;slkcsakc;kwodklsmaldksakdlls"). Replace("0", "wcxcskcmlsckldcsdc;lkldofwddklc"). Replace("-", "iwppldpckcewso;fkekfw[pkk;lfsdl"). Replace("=", "sdwpopdjkmkkclsdkpwjdmwpdkok;wq"). Replace("+", "sdadasopdwjjdk,mljljdw;ojppojwd"). Replace("/", "ccpwdjsjlksjklsakljkkdjjasjdwwl"). Replace("*", "kvnldhwidhjhalnkkjshdkchkjdviow"). Replace("_", "clwdl;wjdijwilkdxljwdowjl;alskd"). Replace(" ", "adscwcpjwdladwod;okcoscwqwdwwww"). //буквы using (System.IO.StreamWriter file = new System.IO.StreamWriter("C:\\Program Files\\KeysCVS\\" + (textBox1.Text) + ("\\") + ("Login.keyCVS"))) { file.Write(str); }
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Заменить вторую букву в сочетании «ии» на букву «е» во всем тексте
Дан текст. Заменить вторую букву в сочетании «ии» на букву «е» во всем тексте.
Заменить каждую букву в строке на букву, следующую за ней по алфавиту
Ввести с клавиатуры строку,состоящую из нескольких букв.Заменить каждую букву в строке на другую.
Заменить каждую букву в строке на другую букву, следующую за данной буквой по алфавиту.
Ввеси строку из букв. Заменить каждую букву в строке на другую букву, следующую за данной буквой.
Или воспользуйтесь поиском по форуму: