初心者はこちら。テキストエリアがあります。テキストを行列に分割してから、行と列を転置したいと考えています。テキストをグループに分割する機能があります。それらを配列に入れる別の関数であり、それは私が持っている限りです。それらを1つの機能に組み合わせる方法、またはそれが必要かどうかはよくわかりません。サブ配列を作成して配列を行列に変換することになっていると思います。その後、最終的にテキストを [ i ] [ j ] から [ j ] [ i ] に転置できます。これはこれまでのところ正しいですか、それとも何かを取り残しましたか? どこかで実際の例を見たいのですが、見つけられないようです。
function G_Group(size, count)
{
if (size <= 0)
{
size = document.encoder.group_size.value;
if (size <= 0)
{
alert('Invalid group size');
return false;
}
}
if (count <= 0)
{
count = document.encoder.group_count.value;
if (count <= 0)
{
alert('Invalid group count');
return false;
}
}
var t = document.encoder.text.value;
var o = '', groups = 0;
t = Tr(t, " \r\n\t");
while (t.length > 0)
{
if (o.length > 0)
{
o += ' ';
}
if (groups >= count)
{
o += "\n";
groups = 0;
}
groups ++;
o += t.slice(0, size);
t = t.slice(size, t.length);
}
document.encoder.text.value = o;
return false;
}
function toArray()
{
var str = document.encoder.text.value;
var nstr = str.split(" ");
document.encoder.text.value = nstr;
}
//i am having trouble with this part. don't know how to call the document.encoder.text.value into the list and don't know how to call group_size into elementsPerSubArray
function toMatrix(list, elementsPerSubArray) {
var matrix = [], i, k;
for (i = 0, k = -1; i < list.length; i++) {
if (i % elementsPerSubArray === 0) {
k++;
matrix[k] = [];
}
matrix[k].push(list[i]);
}
return matrix;
}
最後に、結果をテキストエリアに戻す方法がわかりません
これまでのところ、選択ボックスから選択した文字数のブロックにテキストをグループ化し (30 個のオプションがあります)、必要な場所で改行を作成できます。行列に関する限り、改行は (X) 文字の 1 つのグループの後に作成されます。このテキストを考えると:
OOMUCHABOUTMYCOUNTRYICAREALOTH
このようにグループ分けできます。
OOMUC HABOU TMYCO UNTRY ICARE ALOTH
または、必要に応じてこのようにします。
OOMUC
HABOU
TMYCO
UNTRY
ICARE
ALOTH
私がやりたいことは、マトリックスを反転できるようにすることです。
AIUTHO
LCNMAO
...ect
HEYOUC