08/09/16 20:23:09
>>510
URLリンク(msdn.microsoft.com)(VS.80).aspx
512:デフォルトの名無しさん
08/09/16 20:47:43
<>で囲まれてる文字列を最小一致で全部取り出すにはどうしたらいいですか?
<html><body></body></html>なら、
html body /body /htmlを取り出してリストに突っ込むようなことです
最小一致なのでhtml><body></body></htmlが取り出されると困ります
よろしくおねがいします
513:デフォルトの名無しさん
08/09/16 20:57:44
>>509>>511
そうでしたか、
わざわざどうもです
>>512
char[] separator = {'<', '>'};
string str = "<html><body></body></html>";
str.Split(separator, StringSplitOptions.RemoveEmptyEntries);
っていうのはどうでしょう
514:512
08/09/16 21:17:12
>>513
うまくいきました
本当にありがとうございます。
515:デフォルトの名無しさん
08/09/16 22:15:33
>>512
ちなみに、.NET の正規表現的には \<.*?\> で行ける。
*? で最小一致。
516:デフォルトの名無しさん
08/09/16 22:55:41
>>515
ついでに先読み、戻り読みも入れて (?<=<).*?(?=>) で
>>513>>514
Split使うなら、ゴミが入らないようにしないと
str.Split('<').Skip(1).Select(s => s.Split('>')[0])
因みに、以下の場合はおそらく構文エラーなので適当に
- 1回目のSplitで空文字列がある(ただし、#0は除く)
- 2回目のSplitで要素数が2でないか、#0が空
517:デフォルトの名無しさん
08/09/16 23:05:38
横やりだけどSkip()って初めて見るけど新しく追加されたメソッドか?
518:デフォルトの名無しさん
08/09/16 23:06:47
>>517
LINQ
519:デフォルトの名無しさん
08/09/17 01:06:42
LINQまったく使ってないなぁ
最初は興味あったけど構文が異質すぎて使えない
520:デフォルトの名無しさん
08/09/17 01:14:33
クエリ式を使わないLinqもありだよ。C#のクエリ式ではSkipはサポートされていない。
VBではサポートされている。
521:デフォルトの名無しさん
08/09/17 01:28:02
ゴミって空文字かな?
StringSplitOptions.RemoveEmptyEntries
でおkのような気がす
そういう感じで行くなら
str.Split(new char[]{ '<' , '>' }).Where(s => s != "")
の方が俺好みだば
クエリ構文はまったくわからないなぁ
まったく使わなそうな気がするのでそこだけ勉強すらしてないなぁ。。
522:デフォルトの名無しさん
08/09/17 01:42:24
>>521
いや、こういう事
<html><body>ゴミ</body></html>
523:デフォルトの名無しさん
08/09/17 11:17:23
ああなるほど把握
524:デフォルトの名無しさん
08/09/17 14:56:32
パブリックメンバにDictinaryを含むクラスをシリアライズしたいのだけど、
IDictionary実装クラスはシリアル化できないと怒られます。
KeyValuePair構造体の配列に変換してからシリアル化するのがいいのかと考えたんですが、
デシリアライズの時にどうすればいいのか・・・
どなたか助言いただけると助かります
525:デフォルトの名無しさん
08/09/17 15:09:15
配列にしたとしても、KeyValuePair(のプロパティ)が変更可能でないから駄目じゃないか
俺は変更可能なKeyValuePairとDictionaryのラッパー作って対処したが
526:デフォルトの名無しさん
08/09/17 15:25:42
Dictionaryでset可能なプロパティって気持ち悪いな
IXmlSerializableの実装でも書くか?
527:デフォルトの名無しさん
08/09/17 15:42:24
C#でH8/3069の制御って出来ますか?
528:デフォルトの名無しさん
08/09/17 15:54:41
うん
529:デフォルトの名無しさん
08/09/17 16:13:30
返答ありがとうございます
もう少し具体的な質問が出来るようになるまで自分で勉強しようと思います
530:524
08/09/17 17:29:27
結局パブリックプロパティで、
Dictionaryのkeyとvalueの2次元配列を取得、
Setterでは2次元配列のループでDictionaryにkeyvaluepairを格納していくような設計にしました。
やはりDictionaryはカプセル化した方が良かったですね。
ただデシリアライズ時のパフォーマンスがどうなるかは?ですが。
531:デフォルトの名無しさん
08/09/17 18:49:57
>>528
え゙ ?H8向けのコンパイラ(実行環境)ってあるの?
532:デフォルトの名無しさん
08/09/17 18:55:26
↑アホ
533:デフォルトの名無しさん
08/09/17 19:38:33
いや、俺の方がもっとアホ
534:デフォルトの名無しさん
08/09/17 19:46:40
>>531
H8は(というか今時のマイコンはほとんどそうだと思うけど)実機とIDEで
デバッグができるはず。
まあでもマイコンの開発にデバッガなんて俺はいらないと思うけどね。
少なくとも俺は使ったことも必要性を感じたこともないよ。
535:デフォルトの名無しさん
08/09/17 22:42:02
タイマーで10ミリ秒毎にフォーム上のマウスカーソルの座標を取得し、
マウスに合わせて画像も一緒に移動させる。
更に、クリックした場所に画像を固定する。
ってなことをやってみたんですが、
移動時など、ものっすごい画像がチラついてしまいますorz
やっぱこういうのはDirectXなどを使ったほうが良いのでしょうか?
536:デフォルトの名無しさん
08/09/17 23:06:50
本当にそれは10ミリ秒毎にする必要はあるのか?
537:デフォルトの名無しさん
08/09/17 23:08:53
>10ミリ秒毎
意味あると思ってんのか?
538:デフォルトの名無しさん
08/09/17 23:23:14
100fpsなんて格ゲでもやらんぜ
539:535
08/09/18 00:39:58
3連発でダメ出しされるとは・・・orz
最初100ミリ秒でやったんですが、
マウスの動きに若干遅れるんで、10ミリ秒にしてみました。
意味は全然考えてませんでした。すいません。。
これは仕様から考え直したほうが良さげですね。
お騒がせしました&ありがとうございました。
540:デフォルトの名無しさん
08/09/18 01:14:11
タイマでやらんでもできるっしょ。
ボードゲームのソースでも拾ってくれば?
541:デフォルトの名無しさん
08/09/18 01:33:08
C#というわけではないのですが、ファイル管理ソフトでファイル内
文字列まで見て該当ファイルを見つけるという検索がありますが、
あれは文字列の形式やフォーマットあるいはエンコードなどをすべて
のケースで調べているのでしょうか?
たとえばExcelやワードなどのファイルの場合は、それをテキスト形式
で取り込んで調べるのでしょうか?
542:デフォルトの名無しさん
08/09/18 01:36:38
>>541
うぜえ、なんだこいつ
場違いなんだよ消えうせろクソ餓鬼
543:デフォルトの名無しさん
08/09/18 03:05:33
>>540
画像をマウスと一緒に動かすのは、とりあえず諦めました。
で、オセロとか見てたんですが、置く画像が正方形なら簡単だけど、
長方形も混在してると、途端に難しくなりますね。
ゲーム系のプログラムは全然やったこと無かったんで、
もっと単純な物も参考にしてやってみます。
544:デフォルトの名無しさん
08/09/18 03:52:15
>>543
PanelとかPictureBoxとかのMouseMove/MouseClickイベントで十分ぽい匂いがした。
545:デフォルトの名無しさん
08/09/18 07:56:55
struct Vect
{
public Point[] Points;
}
private void init()
{
Vect v = new Vect();
v.Points = new Point[] { new Point(2, 3), new Point(3, 4) };//これだといける
v.Points = { new Point(2, 3), new Point(3, 4) };//これだとエラーが出る
}
なぜエラーがでるのでしょうか?どういう違いがあるのでしょうか?
546:デフォルトの名無しさん
08/09/18 08:00:00
Point[] Points = { new Point(2, 3), new Point(3, 4) };
こんな感じで記述するといけるんですが・・
547:デフォルトの名無しさん
08/09/18 08:29:26
>>545
new Point[] を省略していいのは変数宣言の時だけ。
548:デフォルトの名無しさん
08/09/18 15:22:45
省略できるのしらんかったw
549:デフォルトの名無しさん
08/09/18 17:28:56
menustripコントロールで出来て、toolstripコントロールだと出来ないことってありますか?
toolstripならアイコンだけじゃなくて文字でも表示できるのでmenustripを使う意味はあるのかなと思いました。
550:デフォルトの名無しさん
08/09/18 19:24:28
C#Builderのプロジェクトファイル群をVC#対応へ移行するにはどのようにするのでしょうか?
551:デフォルトの名無しさん
08/09/18 21:06:14
エラー 1 型または名前空間名 'Drawing' は名前空間 'System' に存在しません。アセンブリ参照が不足しています。
どこいっちゃったのよ。
552:デフォルトの名無しさん
08/09/18 21:13:25
Drawingの前にSystemつけるかusing System.Drawing;じゃないか
553:デフォルトの名無しさん
08/09/18 21:18:55
スレタイに C井 が足りない
554:デフォルトの名無しさん
08/09/18 21:20:07
C丼は足りてる
555:デフォルトの名無しさん
08/09/18 21:24:26
.net1.0からの移植
using System.Drawing;でエラーが出た もう意味がわからない
556:デフォルトの名無しさん
08/09/18 21:27:33
※ C丼: コチュジャン丼。豚肉と温野菜をコチュジャンで甘辛くした物をご飯の上に載せた物
557:デフォルトの名無しさん
08/09/18 21:31:10
ソリューションエクスプローラーの参照設定にSystem.Drawing入ってるか?
558:デフォルトの名無しさん
08/09/18 21:33:20
「System」だけ参照設定に入ってるけど、一つ一つやらなきゃいけないの?
なんか似たようなエラー30個もある
559:デフォルトの名無しさん
08/09/18 21:35:48
なるほど解決しました
エラー減っていくのが楽しいです
ありがとう
560:デフォルトの名無しさん
08/09/18 21:38:59
現金な奴だw
561:デフォルトの名無しさん
08/09/18 21:40:21
じゃあ、C丼について語ろうか
562:デフォルトの名無しさん
08/09/18 21:43:23
丼だけ~ ?
563:デフォルトの名無しさん
08/09/18 23:42:56
C#で、Formに張り付いているTextBoxを、
マウスドラッグされた場所に移動する場合どの
メソッドをしようすればいいでしょうか?
564:デフォルトの名無しさん
08/09/19 00:41:50
メソッドは使用しない。
プロパティなら使用する。
565:デフォルトの名無しさん
08/09/19 00:42:08
private bool clicked = false;
Point beforeLocation;
private void textBox1_MouseDown(object sender, MouseEventArgs e)
{
clicked = true;
beforeLocation = textBox1.PointToScreen(e.Location);
}
private void textBox1_MouseMove(object sender, MouseEventArgs e)
{
if (clicked && (beforeLocation != null))
{
Point afterLocation = textBox1.PointToScreen(e.Location);
textBox1.Left += (afterLocation.X - beforeLocation.X);
textBox1.Top += (afterLocation.Y - beforeLocation.Y);
beforeLocation = afterLocation;
}
}
private void textBox1_MouseUp(object sender, MouseEventArgs e)
{
clicked = false;
}
超適当で作ってみたけど正しいかはわかんない
566:デフォルトの名無しさん
08/09/19 01:03:03
もうちょっとシンプルに
int mx, my;
bool mDown;
private void textBox1_MouseDown(object sender, MouseEventArgs e)
{
mx = e.X;
my = e.Y;
mDown = true;
}
private void textBox1_MouseMove(object sender, MouseEventArgs e)
{
if (!mDown) return;
this.textBox1.Left += e.X - mx;
this.textBox1.Top += e.Y - my;
}
private void textBox1_MouseUp(object sender, MouseEventArgs e)
{
mDown = false;
}
567:デフォルトの名無しさん
08/09/19 04:36:53
msdnドキュメントをオフラインで使用したいのですが
どこでダウンロードできますか?
568:デフォルトの名無しさん
08/09/19 04:42:58
Download Centre
569:デフォルトの名無しさん
08/09/19 07:45:52
2005用のしかないんだけど、2008にも使えるの?
570:デフォルトの名無しさん
08/09/19 09:24:58
すみません、、、質問させていただきます。
for文を利用して、偶数表示をするWEB画面を作成する課題がでました。
解答例)2,4,6,8,10
結果は、10が表示されます。デバッグしたら、
2,4,6,8もif文の中をとっているのに表示されません、、、
提出期限は昨日の夜まででした、、、ほんとに
どうしていいか分かりません。教えてください。
for (int i = 1; i <= 10; i++)
{
if (i % 2 == 0)
{
litShowAns.Text = Convert.ToString(i) + "、";
}
}
litShowAnsはliteralのIDです。
ヒントは文字列の結合らしいのですが。。。何で文字列の結合が必要なのか分かりません。
571:デフォルトの名無しさん
08/09/19 09:36:30
>>570
Aという変数に2から10まで入れたとして、最後に入ってるのは10だろ?
572:デフォルトの名無しさん
08/09/19 09:37:32
>>570
文字列の結合を調べましたか? 試しましたか?
i がそれぞれの値のとき、何が起こっているか自分なりに説明できますか?
573:デフォルトの名無しさん
08/09/19 09:49:15
>>570
litShowAns.Text += Convert.ToString(i) + "、";
574:デフォルトの名無しさん
08/09/19 09:54:16
>>570
for (int i = 2; i <= 10; i+=2)
{
string str += Convert.ToString(i) + "、";
}
litShowAns.Text=str;
575:デフォルトの名無しさん
08/09/19 09:55:15
間違えた
string str ="";
for (int i = 2; i <= 10; i+=2)
{
str += Convert.ToString(i) + "、";
}
litShowAns.Text=str;