擷取字串以多行的形式輸出
問題描述:輸入一個字串(包括漢字和英文字母以及其他符號)以及每行的位元組數。輸出為一個字串被分割為多行輸出。
舉例:
Please input string:
dasa大大dad
Please input string number per line:
4
Print the string as 4 byte per line:
dasa
大大
dad
這裡需要注意的是:中文字元佔兩個位元組,英文字元佔一個位元組。漢字不能輸出半個(也就是說實際一行輸出的位元組等於或比要求少一個)。
java程式碼實現如下:
package test1;
import java.util.Scanner;
public class InterceptionStr
{
static String ss;//用於記錄輸入的字串
static int n; //用於記錄每行輸出的位元組數
public static void main(String[] args)
{
System.out.println("Please input string:");//提示使用者輸入要擷取的字串
Scanner inStr = new Scanner(System.in);
ss = inStr.next();//將使用者輸入以字串的形式取出
System.out.println("Please input string number per line:");//提示使用者輸入每行的位元組數
Scanner inByte = new Scanner(System.in);
n = inByte.nextInt();//以整數的形式取出使用者輸入
interception(setValue());//呼叫函式完成格式化輸出
}
//將使用者的輸入轉換成字串陣列便於處理
public static String[] setValue()
{
String[] string = new String[ss.length()];
for (int i = 0; i < string.length; i++)
{
string[i] = ss.substring(i, i + 1);// 左閉右開
}
return string;
}
public static void interception(String[] string)
{
int count = 0;
String m = "[\u4e00-\u9fa5]";//漢字的正規表示式
System.out.println("Print the string as " + n +" byte per line:");
for (int i = 0; i < string.length; i++)
{
if (string[i].matches(m))
count += 2;//漢字佔兩個位元組
else
count += 1;//其他字元佔一個位元組
if (count < n)
System.out.print(string[i]);
else if (count == n)
{
System.out.print(string[i]);
count = 0;
System.out.println();
}
else
{
count = 0;
System.out.println();
}
}
}
}
相關文章
- 字串擷取字串
- C語言中以字串形式輸出列舉變數C語言字串變數
- MySQL 字串函式:字串擷取MySql字串函式
- jQuery字串擷取詳解jQuery字串
- Shell中的字串擷取介紹字串
- Linux下的字串擷取詳解Linux字串
- jQuery 擷取字串以省略號替代jQuery字串
- 字串擷取 slice,substr,substring 的區別字串
- Spring Boot Filter中擷取響應輸出內容Spring BootFilter
- JavaScript 擷取指定指定區間字串JavaScript字串
- C#常用字串擷取C#字串
- php 擷取中英文混合字串PHP字串
- shell 使用陣列及字串擷取陣列字串
- Swift 4.0 字串擷取,拼接,字串富文字顯示Swift字串
- Oracle以逗號分隔的字串拆分為多行資料Oracle字串
- Java String類,字串常量池,建立方法,字串的獲取,擷取,轉換,分割。Java字串
- sql常用函式詳解(一)——字串擷取SQL函式字串
- MySQL 字串擷取相關函式總結MySql字串函式
- Javascript之字串擷取函式slice()、substring()、substr()JavaScript字串函式
- 擷取字串字串
- mysql 擷取指定的兩個字串之間的內容MySql字串
- JavaScript 多行字串JavaScript字串
- ncurses輸出函式:字元+字串的輸出函式字元字串
- 字串指標的輸出字串指標
- Golang 字串分割,替換和擷取 strings.SplitGolang字串
- JavaScript 擷取字串JavaScript字串
- python如何以表格形式列印輸出Python
- 字串倒序輸出字串
- /**擷取字串是方法*/字串
- js擷取JS
- python函式教程:Python 字串操作(string替換、擷取等)Python函式字串
- 讀取不定長字串輸入字串
- 輸入一段字串,去除字串中重複的字元,並輸出字串字元
- postgresql怎麼擷取字串SQL字串
- 前端字型擷取前端
- uniapp uview 上傳圖片,資料以formData + File 形式傳輸APPViewORM
- 字串、整數倒序輸出字串
- python字串格式化輸出Python字串格式化
- 字串拼接格式化輸出字串