2013-04-27 2 views
2

현재 (Windows Form 프로젝트에서) 텍스트 상자 내용의 처음 4 글자를 가져 와서 인 프로그램과 비교하는 정말 기본적인 스크립팅 언어 (EngineScript라고 함)를 만들고 있습니다. 키워드의 목록을 작성한 다음 남은 문자를 사용하여 키워드에 대한 인수를 형성합니다. 날씨가 궁금 해서요. 한 변수에 처음 네 글자를 쓴 다음 나머지 문자를 다른 글자로 옮기는 방법에 대한 코드 아이디어가 있습니다. 내 언어는 단일 명령입니다. 즉, 프로그램 당 하나의 명령 만 실행할 수 있습니다. 이 같은VB- 텍스트에서 첫 번째 4 문자 잡기

답변

5

String.Substring() 작동합니다 .. =) 그것을 통해 고투하고 배울 수있는 유일한 방법입니다 실현 :

Dim first4Chars = TextBox1.Text.Substring(0, 4) 
Dim restOfChars = TextBox1.Text.Substring(4) 
+0

고맙습니다. @ 앤디는 테스트 할 것입니다. –

+0

위대한 솔루션 @ 앤디! –

+0

@VladimarChudnofski 질문에 답변이 있으면이 대답을 수락해야합니다. :) – Andy

0

뭔가 :

Dim l4 as string, rest as string 
l4 = LEFT(TextBox1.Text, 4) 
rest = MID(TextBox1.Text, 5, LEN(TextBox1.Text)) 
+0

덕분에 나는이 밖으로 –

+0

죄송합니다 ... 내가 VS2012를 사용하는 것이 언급해야한다 시험 할 것이다 ... ') (LEFT'코드는 정수에 대한 가정이다/VB2012의 숫자 ... 다른 방법을 알고 있습니까 –

+0

@VladimarChudnofski 아니요, 그건 사실이 아닙니다. LEFT 기능은 지난 30 년간의 기능과 동일하게 작동합니다. VB2012 문서는 다음과 같습니다. http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.strings.left.aspx – RBarryYoung

1

내가 당신에게 처음 네 글자를하는 방법에 대한 좋은 힌트를 보여 주며, 그와 함께 넣어 수있는 것을 볼 수 있습니다. VB는 내 목에 통증이 있었다 !! 나는

dim substring as string 

substringA = Left$("Entered String", 4) 

strSubstrA = "Ente" 

substringB = Left$("What about a space?", 6) 

strSubstrB = "What a" 
+0

감사합니다.이 메시지는 –

0

귀하의 질문이 너무 명확하지 않다 ..

하지만 이 시도해 볼 수 있습니다

dim sVar as string = mid(TextBox1.text,1,4) 
0

주의 사항 : Substring()은 그는 텍스트 상자 길이가 두 번째 매개 변수보다 크거나 같습니다. 따라서 입력 내용에 누군가가 4 자 미만을 입력하면 문제가 발생합니다.

당신이 안전을 위해해야 ​​

Dim txt1 as String = Textbox1.Text 
Dim first4Chars = If(txt1.Length > 4, txt1.Substring(0, 4), txt1.SubString(0,text.Length)) 
관련 문제