2015年1月21日水曜日

正規表現 メモ

 ・行頭
^

・行末
$

・文字Aから文字Bの間
A.+?B

・文字Aから末尾まで。
/A.+?$/

2015年1月18日日曜日

[Ruby] csvデータを読み込み処理して、csvデータ形式で出力。


CSVデータの1行分。
CSVデータの実態はテキストファイル。カンマを目印に分割できる。

※セル内に改行がある場合は、そこで分割されてしまうので、上記の方法では無理。
いろいろ考えはあると思うが、
require 'csv'
を使うやり方がある。

require 'csv'

CSV.foreach(filename) do |row|

end

※空欄は「""」ではなく、「nil」になるので注意。

2015年1月12日月曜日

[Android] 一部の文字の色を変える。

文字に下線を引くとかだと、XMLのみの記述でいけるが、色の変更は反映してくれないようだ。

解決方法としては、java側で文字をセットする。
その際、Html.fromHtml() を使う。

TextView textView = (TextView) findViewById(R.id.hoge);
textView.setText(Html.fromHtml(getString(R.string.piyo)));

あとは、
<string name=“piyo”>テスト&lt;font color=\"red\"&gt;色を変えたい文字&lt;/font&gt;テスト</string>
こんな感じで書く。
※<>は、&lt; &gt; と書いたり。

2015年1月11日日曜日

JavaScript メモ

・以下3つが連携。
1. CSS   デザインを指定
2. HTML  要素とテキストのみ。プログラムは含まない。
3. JavaScript コードのみを記述。HTMLと混ぜない。

・変数
var 付けなくても使えるが、全てグローバルになる。

・連想配列がある
配列の添字に数字だけでなく文字を指定できる。

・無名オブジェクトの配列変数で、複数のデータを格納できる

<script type="text/javascript">

var data = [

{name:'あああ', tax: 3} ,

{name:'いいい', tax: 5} ,

{name:'ううう', tax: 8}

];

</script>

⇒呼び出しは、
prod_data[0].name
prod_data[0].price
prod_data[1].price

※また、多次元配列を使えば、いちいち名前を割り振らずに、値をそのまま格納することもできる。
var data = [
['名前','税率'],
['あああ', 3] ,
['いいい', 5] ,
];

この場合、prod_data1[0][0]で名前となる。以下。(2次元配列)
00 01
10 11
20 21

・CSS
class="hoge"
とタグに書いてあったら、
style タグにて、
.hoge {color:red}
みたいに指定されているはず。

・関数の定義
function hoge ()
と書く。
※最後に()が付けばメソッド名として扱われる。

・ログ
console.log(text);

・エラー確認
FirefoxDeveloperEdition
とかで、WEBコンソールで確認可能。

・html の書き変え
<body>
<span id="hoge">
<script>
window.onload=function() {
document.getElementById("hoge").innerHTML = '<p>test</p>';
}
</script>
</body>
または、上記のspanタグの記述の後で、
function testfunc() {
document.getElementById("hoge").innerHTML = '<p>test</p>';
};
testfunc();

・jQuery
$(function(){

});

2015年1月7日水曜日

PHP メモ

PHP はHTML の生成に使われる。
PHP はHTML のコードと混ぜて書くことができる。

・開始、終了タグ
開始タグ <?php
終了タグ ?>

・変数
$ が付いてるのは変数。

・繰り返し(foreach文)
foreach ($results as $i)
results変数の中身をi変数に移して、要素が終わるまで繰り返す。

・デバックするときは、
var_dump($i);
で、わりと何でも出してくれる。
※文字化けが発生した場合も、文字化け状態で出力してくれる。

・empty
カラの場合にTRUE
在る場合はFALSE

・三項演算子
(条件) ? (TRUEの場合に返す値) : (FALSEの場合に返す値)

2015年1月3日土曜日

Ruby メモ

・文字列を囲むのに、
"" 特殊文字(\nとか)を解釈する。
''  特殊文字を解釈しない。

・p オブジェクトの中身を表示。

・コメントの書き方
先頭に#
または、
=begin
(~~~)
=end

・条件文
if ~ then
elsif ~ then (elseif ではない。)
while ~ do
※最後のthen,do は省略可能。
締めは、
end

・繰り返し処理
■ each文
hoge.each { | piyo |
(hoge変数の中身が、順にpiyo変数に入るので、そのpiyo変数に対して繰り返したい処理を書く。)
}

■ for文
for i in 0..5

end
(0〜5まで繰り返す。加算される変数iを使いたい時に用いる)

・正規表現
=~ 正規表現でマッチングを行う時に使う。

・null じゃなくて nil
また条件判断にて、偽として扱われる。

・コマンドラインからのデータ入力
ARGVという配列オブジェクトが受け取る。(ARGV[0])

・メソッド
def メソッド名 (引数)
※引数にはデフォルト値を設定出来る。
返り値は、最後の行(条件文の場合はそれぞれ)が自動的になる。
return で明示した場合は、そこでメソッドが終了する。

・クラスの作成
class クラス名
   def initialize()
end
※クラス名は大文字から始める
※initializeメソッドはJavaでいうコンストラクタ

・変数
@hoge…インスタンス変数。インスタンスごとに割り当てられる。
@@hoge…クラス変数。そのクラスの全てのインスタンスで共有。

・文字を特定文字で分割
コンマ区切りなら、
hoge.split(/,/)

・String変数に文字を追加
@text << "てすと"

・上から実行するので、メソッドを下に書くとエラー

・型を調べる
p hoge.class

・◯◯が含まれているか?
hoge.include?("◯◯")

・変数は、参照渡し(値渡しではない)なので注意。
破壊的操作を行う場合は、必要に応じて値をコピーするような記述をする。
hoge = piyo.dup
など。

・スライス
例えば、「/」と「・」で分割したい場合
split(/[\/・]/)
※「/」の前にはバックスラッシュを入れる。