Điều tôi muốn là nhận được từ "visualbasic" giữa hai dấu phân cách < và >, sau đó thêm ". com" đến từ tôi. e" trực quan. com" và cuối cùng thêm từ này trở lại chuỗi str để chuỗi str hiển thị là "Chào mừng bạn đến với thế giới"
Bài viết này trình bày mã C plus plus (C++) để trích xuất/thay thế một chuỗi con giữa hai dấu phân cách hoặc ký tự bằng cách sử dụng các hàm find và substr
Trích xuất chuỗi giữa hai dấu phân cách
Ví dụ: nếu bạn muốn trích xuất chuỗi giữa hai dấu phân cách “[” và “]” từ Sri[nivas]an , thì mã CPP sẽ là
#include
using namespace std;
int main()
{
// Take any string
string s1 = "Sri[nivas]an";
// Find the position of first delimiter
int firstDelPos = s1.find("[");
// Find the position of second delimiter
int secondDelPos = s1.find("]");
// Get the substring between two delimiters
string strbetweenTwoDels = s1.substr(firstDelPos+1, secondDelPos-firstDelPos-1);
// prints the result
cout << "String between delimiters [ and ] is: " << strbetweenTwoDels;
return 0;
}
Đầu ra mã C++ để trích xuất một chuỗi giữa hai dấu phân cách
Thay thế Chuỗi giữa hai dấu phân cách
Dưới đây là mã cộng cộng C để thay thế chuỗi giữa hai ký tự hoặc dấu phân cách trong một chuỗi. Mã thay thế “nivasa” giữa các dấu phân cách “[” và “]” trong “Sri[nivasa]n” bằng “vas”
Chuyển nhiều dấu phân cách cho hàm Tokenize được đưa ra trong bài đăng trên blog. Bạn có thể dễ dàng thay đổi tham số đầu ra từ vectơ của std::string thành vectơ của CString. Ngoài ra, một ứng dụng thử nghiệm được cung cấp để kiểm tra các trường hợp khác nhau. Mình đã thử với file 1MB, 2MB thấy khá ổn
Nibu babu thomas Microsoft MVP cho VC++
Mã phải được viết để được đọc, không phải bởi trình biên dịch, mà bởi một người khác
Blog lập trình. http. //nibuthomas. báo chí. com
tôi đã thử với str. Mã hóa ('%', 0)
Bạn có thể sử dụng chính CStringT::Tokenize(). nó chấp nhận một chuỗi dấu phân cách làm tham số. Chẳng hạn, hãy xem đoạn mã mẫu từ msdn
Có đủ ánh sáng cho những người muốn thấy, và có đủ bóng tối cho những người có khuynh hướng trái ngược Blaise Pascal
Tôi muốn gửi một chuỗi Lệnh đến cổng modem (COM3) Tôi đã tạo một tệp với CreateFile() thì tham số của hàm WriteFile() để gửi một chuỗi đến cổng COM3 là gì. ?
Bạn đã thử chuyển tên tệp là "COM3" chưa (không cần phần mở rộng, không cần thư mục gốc hoặc đường dẫn tuyệt đối). Điều đó phải cung cấp cho bạn quyền truy cập trực tiếp vào cổng
Ngoài ra cổng COM3 còn gắn cái gì nữa? . Tôi nghĩ bạn cần thử chỉ định tên tệp là "COM3", như tôi đã nói và nếu nó không mang lại cho bạn kết quả mong muốn, bạn sẽ cần cung cấp thêm chi tiết
Nhiều người ngoan cố theo đuổi con đường mình đã chọn, số ít theo đuổi mục tiêu - Friedrich Nietzsche