Qt는 문자열 문자열 문자열 운영 및 나누기 연산

https://blog.csdn.net/rong11417/article/details/90203837

1. 분할 지정된 문자 예에 따른 분할 등; 등 또는 "/"분할 ","


QString STR = "안녕, 세계"
QStringList 목록 = str.split ( "");
A =리스트 [0] QString; // A = "안녕하세요"
QString리스트 B = [1]; // B = "세계"
QString과 str2 = b.append (A);
STR2 = "worldhello"


2. 중간 위치로 나눈

매개 변수는 문자열의 끝에서 수행 할 수있는 위치를 나타냅니다

그것은 두 위치 촬영 문자열 사이에 두 개의 매개 변수를 나타냅니다


QString STR = "helloworld를"
QString str.mid A = (0, 5);
(5) = b를 str.mid QString;
QString STR2 = b.append (a);
STR2 = "worldhello"

 

QT를를 사용 QString 클래스

기능 QString 클래스의 역할.

문자열 연결 기능.
도 1,도 QString +와 + = 연산자 과부하. 이러한 연산자는 두 개의 문자열을 연결할 수 있습니다.
    
2 APPEND () 함수를 QString 것은 예를 들면, 유사한 동작을 제공한다 :

   STR = "사용자 :";  
   str.append (사용자 이름);  
   str.append ( "\ n");


둘째, 문자열의 위치 값을 얻을 수있다.

//

QString은 어떤 기능은 지정된 두 위치 사이의 문자열을 꺼낼 수 없습니다습니까?

 
    QString X = "나인 파인애플";  
    QString x.mid Y = (5,4); // Y == "소나무"  
    QString Z = x.mid (5); // Z == "파인애플"

 

1, 중간 () 함수는 제 문자열의 길이를 취할되면, 먼저 시작 위치 인 두 개의 인자를 받아 들인다. 두번째 파라미터가 생략 된 경우, 마지막에 시작 위치에서 촬영된다. 예로서 상기와 같이 도시

2 함수 왼쪽 () 및 rigt () 마찬가지로, int 형 n의 변수를 수용 문자열이 촬영된다. 것을 제외하고는, 왼쪽 N 문자 및 오른쪽 (왼쪽에서 촬영 () 함수) 우측에서 찍은. 다음과 같다) (좌측의 예이다 :

   1. QString X = "파인애플";  
   2. QString의 Y = x.left (4); // y를 == "소나무"

셋째, 문자의 문자 위치에 액세스 할 수 있습니다.
     같이 IndexOf는 ()
   // lastIndexOf에서도 () 함수가 반환하는 문자열의 마지막에 나타나는 인덱스가  
   , X 축 = "끈적 질문"QString  
   y 축 = "는 STI를"QString,  
   x.indexOf합니다 (y 축); //이 0 반환  
   x.indexOf을 (Y ,. 1); // 반환 10  
   x.indexOf (Y 10) // 10 반환  
   x.indexOf (Y ,. 11); // 반환 -1

넷째, 문자열이 시작 또는 끝에서 특정 시퀀스를 검출 할 수 없습니다.
    startsWith () endsWith ()
    
    
    IF (url.startsWith ( "HTTP :". "PNG") && url.endsWith ())  
         {}

    이 코드는 동일합니다

   경우 (url.left (5) == "HTTP"&& url.right (4) == ".png를 ') 
         {}

다섯째,

     문자열 교체 기능) (교체;
     손질 OF () 함수가 빈 문자열의 양쪽에 제거 (공백을 포함하여 노트 공백 문자, 탭 및 줄 바꿈보다는 공간)
     tolower를 ()와 TOUPPER () 함수의 뜻 문자열에 문자열을 소문자를 대문자,
     삭제 () 및 인서트 () 함수를 삽입 할 수있는 능력 및 삭제 스트링을 제공한다;
     간체 () 모두 공백의 연속적인 스트링으로 대체 될 수 기능, 블랭크의 단부 예 : "\ t"등의 제거 문자는 공간을 반환합니다 "."

 

여섯째, CONST 문자 * C 스타일의 문자열과 QString 문자 유형 간의 변환.

     , QString = A + 간단히이 기능을 달성하기 위해 :
     STR + = "(1870)";

     여기, 우리가 const를 숯불 * 문자열을 입력합니다 "(1870)"는 QString 형으로 변환.
     당신이 명시 적 변환이 필요한 경우, QString은 주조 작업 또는 기능 fromAscii 중고 () 등을 할 수있다.
     QByteArray 타입 오브젝트를 얻었다의 ToASCII ()을 사용하여, 하나의 두 단계를 필요로하는 타입 QString의 CONST 숯불 * 문자열로 바꾸어,하기 위하여
     데이터 () 또는 constData () 함수 다음 호출
     예 :

     의 printf (. "사용자 : %의 \ n", str.toAscii () 데이터 ());

     편의상, Qt는 매크로 qPrintable (), 매크로)의 ToASCII (예를 constData () 상당을 제공한다 :

      의 printf ( "사용자 : %의 \  N", qPrintable (STR));
      
      우리는 클래스 데이터 위 QByteArray () 또는 constData () 함수를 호출하고 CONST의 문자를 얻기 * QByteArray 유형의 내부 문자열,
      그러므로, 우리는하지 않습니다 우리가 메모리를 관리하는 메모리 누수 및 기타 문제에 대해 걱정할 필요는 Qt는 것입니다. 그러나 이것은 또한 우리가,주의, 너무 오래 포인터를 사용하지 않는 것을 의미한다
      QByteArray가 삭제 경우, 다음 포인터가 필드 가이드되기 때문이다. 이 객체가 변수에 배치되지 QByteArray 경우,
      명령문의 끝, QbyteArray 개체가 삭제 될 것입니다 다음 때, 포인터가 될 것입니다 삭제합니다.

문자열 변환 기능의 일곱 개 다른 유형.
     정수 형질 전환 된 toInt ()
     toDouble ()는 이중 형질 전환 된
     toLong ()를 긴 회전
     변환이 함수가 true 또는 false로 설정 여부에 따라 성공 후, 부울 매개 변수로 포인터를 받아 이러한 기능을 :

     확인 BOOL;  
     더블 D = str.toDouble (OK);  
     경우 (확인)   
     {  
         // 뭔가를 ...  
     } 다른 {  
          // 뭔가를 ...  
     }


     정수 회전 문자열 :
         1 고정 기능 번호 ()를 사용하여 디지털 문자열로 변환 할 수있다. 예를 들어
             ,이 QString QString :: = 번호 STR (54.3) 
         2 같은 목적 달성 () 비 정적 setNum 함수를 사용할 수있다 :
              QString STR;  
              str.setNum을 (54.3);


    

여덟, QString는 sprintf와 () 함수는 C 언어 printf 함수와 동일한 기능을 제공하여 달성된다.
    
    1. str.sprintf ( "%의 % .1f입니다  %%", "완전 경쟁", 100.0)
       이 코드 출력 : 100.0 % 완전 경쟁
       
    이 또 다른 형식 문자열 인수 기능 출력 () :
 
        STR = QString ( "% 1 % 2 (% 3s- % 4S)"), 인수 ( "허용") 인수 ( "사회") 인수 (1950) .arg (1970) ...;

{

 

STR을 QString; 
STR = "% 1 % 2"; 
str.arg ( "%의 1 층", "안녕하세요"); // 반환 "안녕하세요 1F %" 
str.arg을 ( "%의 1 층") 인수 ( "안녕하세요."); // 반환 "Hellof % 2"

 

 

}

      이 코드는, 후술 허용하는 교체되어, 1 %로의 Arg () 함수를 순차적으로 콘텐츠를 교체 될 수있는 자리로 1 %, 2 %, 3 %, 4 %에서
      2 %가 대체 될 1,970 회가 3 % 1950 대체 될 것이며, 4 %로 대체되고, 그리고 마지막으로,
      이 코드는 출력 :. 허용 사회 (1950 - 1970이다 ), 인수 () 의 sprintf보다 함수 () 형태 보증 될
      때 또한 파라미터로서 다양한 데이터 형식을 받아,이 종래의 sprintf보다는의 Arg () 함수를 사용하도록 권장한다 ().

나인, 문자열 길이, 반환 값 유형 INT를 찾을 수 있습니다.
     길이 ();

10 가지 방법 제대로 한자를 표시합니다

QT를 기반으로 문자 세트는 로케일 환경 변수를 한 경우, 다음과 같은 명령을 사용할 수 있습니다
QString :: fromLocal8Bit를 ( "! 안녕하세요, 세계");

QString fromLocal8Bit () 함수를 사용하여,


QString STR;


STR = str.fromLocal8Bit ( "HA");

게시 42 개 원래 기사 · 원 찬양 148 · 전망 410 000 +

추천

출처blog.csdn.net/baidu_37503452/article/details/104359203